繁体   English   中英

正则表达式用于字母数字和特殊字符

[英]Regex for alphanumeric and special characters

我需要定义一个接受字母数字和以下特殊字符的正则表达式:@#$%&*()-_ +] [';:?。,!

我想出来:

string pattern = @"[a-zA-Z0-9@#$%&*+\-_(),+':;?.,![]\s\\/]+$";

但这似乎并没有起作用。 有人可以让我知道缺少什么吗?

中间的[]需要转义*:

\[\]

您也可能希望使用^来锚定字符串的开头。


*可能只是]但我喜欢两者兼顾。

当定义一个字符类,你需要躲避右括号]内,就像“ ^ ”,“ - ”和逃逸序列\\本身,你已经正确:

string pattern = @"[a-zA-Z0-9@#$%&*+\-_(),+':;?.,![\]\s\\/]+$";
                                    ^              ^   ^

其中一些角色需要转义(*,+等)。 最简单的方法是简单地将它们全部转义:

string pattern = @"[a-zA-Z0-9\@\#\$\%\&\*\(\)\-\_\+\]\[\'\;\:\?\.\,\!]+$";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM