模式是
Regex splRegExp = new System.Text.RegularExpressions.Regex(@"[\,@,+,\,?,\d,%,.,?,*,&,^,$,(,!,),#,-,_]");
除“ - ”外,所有字符均有效。请指教。
答案 0 :(得分:4)
使用
@"[,@+\\?\d%.*&^$(!)#_-]"
不需要所有这些逗号。
如果您在character class内放置-
,则只有当它位于班级的开头或结尾时才表示文字短划线。否则它表示像A-Z
这样的范围。正如Damien所说,范围,-,
确实相当小(当然不包含-
。)
答案 1 :(得分:1)
' - '必须是正则表达式中的第一个字符。
Regex splRegExp = new System.Text.RegularExpressions.Regex(@"[-,\,@,+,\,?,\d,%,.,?,*,&,^,$,(,!,),#,_]");
答案 2 :(得分:0)
你需要转义-character才能使它工作(这是一个正则表达式语法)
试试这个:
"[\,@,+,\,?,\d,%,.,?,*,&,^,$,(,!,),#,\-,_]"