2010-04-16 71 views
1

在.NET中使用正则表达式,模式为^%[^%]+%\Z和字符串为"few)few%"我收到错误 - System.ArgumentException: parsing "few)few%" - Too many)'sReg Ex解析错误 - 太多了)的

Dim match As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match("^%[^%]+%\Z", "few)few%") 

问题是什么?我是否需要在任何输入表达式中转义括号来注册ex?

(我想在确定字符串的通配符%的开头和字符串的结尾而不是字符串中的其他地方)

+0

我可能是错误的,但它看起来像你也许应该逃避你的字符串与另一个反斜杠反斜杠? – slartibartfast 2010-04-16 08:21:39

+0

@slartibartfast:显然,在Visual Basic中这不是必需的。 – 2010-04-16 11:00:18

回答

5

不,你的输入没有进行转义。你只是用错误的方式来表达你的观点。

MSDN

public static Match Match(
    string input, 
    string pattern 
) 
+1

我一整天都在用正确的方式,周五晚上有些事情让你无法看到简单的编码错误。感谢您指出了这一点。 – 2010-04-18 23:44:00

+0

哈哈我几乎拉我的头发,直到我看到这个答案。愚蠢的我。可能是因为现在是凌晨1点。 – 2016-05-12 20:03:15