网络。我创建了一个正则表达式验证器来检查特殊字符意味着我不希望用户名中有任何特殊字符。以下是代码
Regex objAlphaPattern = new Regex(@"[a-zA-Z0-9_@.-]");
bool sts = objAlphaPattern.IsMatch(username);
如果我以 $%^&asghf 的形式提供用户名,那么验证器将给出无效的数据格式,这是我想要的结果,但如果我提供数据 s23_@.-^&()%^ $# 然后我的验证器应该阻止数据但我的验证器允许错误的数据
那么如何不允许除 a-z A-A 0-9 _ @ .- 之外的任何特殊字符
谢谢 苏尼尔·库马尔·萨胡
最佳答案
你的表达有些问题。首先,您的表达式的开头和结尾没有起始字符串字符 ^
和结束字符串字符 $
,这意味着它只需要在您的某处找到匹配项字符串。
其次,您目前只在寻找一个角色。要强制匹配您需要使用的所有字符,*
应该是这样的:
Regex objAlphaPattern = new Regex(@"^[a-zA-Z0-9_@.-]*$");
bool sts = objAlphaPattern.IsMatch(username);
关于c# - 如何使用正则表达式检查特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2279433/