正则表达式检查特殊字符或数字

时间:2011-08-18 04:58:58

标签: regex

我有这样的正则表达式,用于检查字符串中的at least one special character

^(.*[^0-9a-zA-Z].*)$

但是我怎么能改变这个来检查字符串中的at least one special characterat leas one number

2 个答案:

答案 0 :(得分:2)

.*[^a-zA-Z]+.*

将匹配任何后跟特殊字符后跟任何内容的内容。

请注意,我刚从字符类中删除了0-9(方括号中包含的字符)。

此外,我删除了^$标记 - 分别与字符串的开头和结尾匹配。您不需要它,因为无论如何,您使用.*(匹配零或更多任何字符)使其冗余。

事实上,如果您只是检查,如果字符串包含特殊字符,那么以下内容就足够了:

[^a-zA-Z]

答案 1 :(得分:1)

您可以使用Expresso,它是一个生成RegExps Expresso

的智能工具