我写了一个正则表达式,它应该匹配一个没有空格、正斜杠或反斜杠的字符串。问题是,我收到“未终止的集合”错误。
我的正则表达式:
Regex checkForSpace = new Regex("^[^\\s\\/\\]+$");
在我添加反斜杠片段之前,它按预期工作,现在我得到了错误。不完全确定我做错了什么。这是我第一次使用正则表达式的重要经验。
任何意见,将不胜感激。
您不小心逃脱了]
正则表达式中的关闭。
试试这个:
Regex C# string
White space \s "\\s"
Backslash \\ "\\\\"
Slash / "/"
\s\\/ "\\s\\\\/"
Regex checkForSpace = new Regex("^[^\\s\\\\/]+$");
你遇到了反斜杠转义。正则表达式和 C# 字符串都需要它。为避免 C# 需要它,请将 @ 符号放入。
尝试这样做(在字符串的开头使用@)
new Regex(@"^[^\s/\\]+$");