2

我有这样的正则表达式:

regularExp = "^[-]{0,1}([0-9]|[a-z]|[A-Z]|[\s]){0," & decNum & "}\.$"

在这里我需要添加所有特殊字符,就像~!@#$%^&*()_+{}|:"<>?[]\;',./在 VB6.0中一样

4

3 回答 3

1

我猜你正在寻找类似POSIX 括号扩展和一个特殊字符类,它匹配所有标点字符而不明确列出它们。

不幸的是,您不走运,因为 Visual Basic 6 中可用的正则表达式是由IE 5.5 中可用的同一VBScript RegExp 引擎提供的。那个引擎已经 15 年没有更新了,所以很多功能都丢失了

话虽如此,您唯一的选择是“精心挑选”您想要匹配的每个角色并将它们放入角色类中,就像这样

[~!@#$%^&*()_+{}|:"<>?[\]\\;',./]

幸运的是,您不必转义字符类中的所有特殊字符,只需转义那些混淆解析器的字符即可。(即\,^和)-]

于 2013-10-21T07:55:19.867 回答
0

您可以使用

^[a-zA-Z._^%$#!~@,-] 作为参考并添加更多您想要允许的特殊字符。

于 2013-10-21T07:24:25.390 回答
0

您可以使用添加特殊字符如下

[^%$#!~@()*\s]
于 2013-10-21T07:26:56.260 回答