如何将自定义符号添加到正则表达式? DevExpress 掩码

How to add custom symbols to Regular Expression? DevExpress Mask

我有以下正则表达式

(\w)+(,(\w)+)*

仅以逗号分隔的字符和数字

test123,test3,test9

我还想添加可以在 \w

中使用的符号,例如 @、#、$

当我尝试 [(\w)$@] 时没有用。 我需要在 DevExpress TextEdit Mask 中使用它。它说语法错误

http://prntscr.com/pbyq7p

如果this page下面有回复说[].

内不能使用特殊字符

可用角色列在Mask Type: Extended Regular Expressions

建议使用带交替的分组来分隔字符 class 和特殊字符。

你可以试试

(\w+|[@#$]+)+(,(\w+|[@#$]+))+

部分

  • ( 第 1 组
    • \w+ 匹配 1+ 个单词字符
    • |
    • [@#$]+ 匹配任何列表者 1 次以上
  • )+关闭群重复1+次
  • ( 第 2 组
    • ,字面匹配
    • (\w+|[@#$]+) 与第 1 组相同的模式
  • )+ 关闭组并从 , 开始重复整个组 1+ 次

Regex demo

如果您的数据只包含字符 a-z 和数字,您也可以尝试

([a-z0-9@#$]+)+(,([a-z0-9@#$]+))+

Regex demo