我有这样的正则表达式:
regularExp = "^[-]{0,1}([0-9]|[a-z]|[A-Z]|[\s]){0," & decNum & "}\.$"
在这里我需要添加所有特殊字符,就像~!@#$%^&*()_+{}|:"<>?[]\;',./
在 VB6.0中一样
我有这样的正则表达式:
regularExp = "^[-]{0,1}([0-9]|[a-z]|[A-Z]|[\s]){0," & decNum & "}\.$"
在这里我需要添加所有特殊字符,就像~!@#$%^&*()_+{}|:"<>?[]\;',./
在 VB6.0中一样
我猜你正在寻找类似POSIX 括号扩展和一个特殊字符类,它匹配所有标点字符而不明确列出它们。
不幸的是,您不走运,因为 Visual Basic 6 中可用的正则表达式是由IE 5.5 中可用的同一VBScript RegExp 引擎提供的。那个引擎已经 15 年没有更新了,所以很多功能都丢失了。
话虽如此,您唯一的选择是“精心挑选”您想要匹配的每个角色并将它们放入角色类中,就像这样
[~!@#$%^&*()_+{}|:"<>?[\]\\;',./]
幸运的是,您不必转义字符类中的所有特殊字符,只需转义那些混淆解析器的字符即可。(即\
,^
和)-
]
您可以使用
^[a-zA-Z._^%$#!~@,-] 作为参考并添加更多您想要允许的特殊字符。
您可以使用添加特殊字符如下
[^%$#!~@()*\s]