正则表达式用于字母数字和特殊字符
我需要定义一个接受字母数字和以下特殊字符的正则表达式:@#$%&*()-_ +] [‘;:?。,!
我想出来了:
string pattern = @"[a-zA-Z0-9@#$%&*+\-_(),+':;?.,![]\s\\/]+$";
但这似乎并没有奏效。 有人可以让我知道缺少什么吗?
中间的[]
需要转义*:
\[\]
您也可能希望使用^
来锚定字符串的开头。
*可能只是]
但我喜欢两者兼顾平衡。
在定义一个字符类时,你需要在其中转义结束括号,就像“ ^
”,“ -
”和你正确完成的转义序列\
本身一样:
string pattern = @"[a-zA-Z0-9@#$%&*+\-_(),+':;?.,![\]\s\\/]+$"; ^ ^ ^
其中一些角色需要转义(*,+等)。 最简单的方法是简单地将它们全部转义:
string pattern = @"[a-zA-Z0-9\@\#\$\%\&\*\(\)\-\_\+\]\[\'\;\:\?\.\,\!]+$";