2010-04-16 3 views
1

Использование регулярных выражений в .NET с шаблоном ^%[^%]+%\Z и строка "few)few%" Я получаю ошибку - System.ArgumentException: parsing "few)few%" - Too many)'s.Ошибка анализа выражения Reg Ex - слишком много)

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

В чем проблема? Нужно ли мне избегать скобок в любом входном выражении для reg ex?

(я пытаюсь определить, если строка имеет подстановочные% в начале и в конце строки, но не в другом месте в строке)

+0

I может быть ошибочным, но это выглядит, как вы, возможно, должны избежать обратной косой черты в вашей строке с другой обратной косой черты? – slartibartfast

+0

@slartibartfast: По-видимому, это необязательно в Visual Basic. –

ответ

5

Нет, ваш вклад не должны быть экранированы. У вас просто неправильные аргументы.

От MSDN:

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

Я тоже делал это в течение всего дня, есть что-то по вечерам в пятницу, что не позволяет увидеть простые ошибки кодирования. Спасибо что подметил это. –

+0

lol Я почти потянул мои волосы, пока не увидел этот ответ. Глупый я. Наверное, потому что ночью 1 ночи. –