2011-09-06 144 views

回答

5

这种模式的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]将匹配abc,或-

还要注意引号字符串开头的@。这对于这种模式并不重要,但使用C#regex是一个好习惯。正则表达式通常包含反斜杠,并且@"..."表单将允许您在模式中使用反斜杠而不必转义它们。

-1

在你想匹配的数字,较低和较高的情况下的拉丁字符的情况下,“ - ”,“/”和““”那么我会建议如下:

[0-9a-zA-Z-\/\'] 
+1

并记住要避开反斜线或使用逐字字符串文字'@“...”' – xanatos

+2

...或者留下反斜杠。在正则表达式中'/'和'''都没有任何特殊的含义。 '-'可能是好的地方(不同的口味有不同的规则),但我会将它移到最后,以消除它应该与字面连字符匹配的任何疑问。 –