【发布时间】:2011-09-06 18:42:33
【问题描述】:
我正在寻找以下计算的正则表达式。
0-9 a-Z A-Z - / '
【问题讨论】:
我正在寻找以下计算的正则表达式。
0-9 a-Z A-Z - / '
【问题讨论】:
这个模式的 C# 版本是:
@"[0-9a-zA-Z/'-]"
在代码中使用:
var regex = new Regex(@"[0-9a-zA-Z/'-]");
或
var regex = new Regex(@"[0-9a-z/'-]", RegexOptions.IgnoreCase);
请注意,- 位于字符类的最末端(括号中的部分)。对于- 表示字符类中的文字连字符,它必须位于类的开头或结尾(即[-blah] 或[blah-]),或者用反斜杠转义:[ab\-c] 将匹配a 、b、c 或 -。
还要注意引号字符串开头的@。这对于这种模式并不重要,但是使用 C# 正则表达式是一个好习惯。正则表达式通常包含反斜杠,@"..." 表单将允许您在模式中使用反斜杠而无需转义它们。
【讨论】:
使用以下代码验证(正则表达式模式)字母和数字:
String name="123ABCabc";
if(System.Text.RegularExpressions.Regex.Match(name, @"[0-9a-zA-Z_]") == true)
{
return true;
}
else
{
return false;
}
【讨论】:
如果您想匹配数字、小写和大写拉丁字符、“-”、“/”和“'”,那么我建议如下:
[0-9a-zA-Z-\/\']
【讨论】:
@"..."
/ 和 ' 在正则表达式中都没有任何特殊含义。 - 可能没问题(不同的口味有不同的规则),但无论如何我都会把它移到最后,以消除任何关于它应该匹配文字连字符的疑问。