正则表达式中的特殊字符

时间:2013-06-17 17:27:57

标签: c# regex

我有一个看起来像这样的模式(我不是创作者):

[a-z,A-z,0-9,\-,\+,\&,\/,\\\,\s]{1,127}

我传递给Regex.IsMatch()

是否有一种“更好”的方式来编写相同的表达式?而且更好,我的意思是更短。

如果我想添加æ之类的特殊字符,我只需添加吗?

1 个答案:

答案 0 :(得分:1)

您可以先删除重复项。这包括重复的逗号以及a-z,因为它封装在A-z范围内,与\一样。

您也不必转义大多数字符,并且可以将-拉到字符类的前面以避免转义那个字符。

这会让你:

[-+&/,A-z0-9\s]{1,127}