嗨,我有一个要求验证输入只能接受字母数字,-,_的要求。要对此进行测试,我正在使用以下代码
string pattern = @"[^a-z A-Z 0-9._-]$";
var matches = Regex.Matches(m_ModelName.Value, pattern, RegexOptions.IgnoreCase);
return (matches.Count > 0);
如果计数> 0,则表示存在无效字符。但是它永远不会按照我的期望返回。请告诉我我做错了。这是严格的C#
string pattern = @"[^a-z A-Z 0-9._-]$";
此正则表达式仅匹配字符串中的最后一个字符(由于$锚)。
您可能想要类似的东西:
string pattern = @"^[a-zA-Z0-9._-]+$";
return Regex.IsMatch(m_ModelName.Value, pattern, RegexOptions.IgnoreCase);
您也可以看一下\w
角色类。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句