Регулярное выражение для соответствующих функций - PullRequest
1 голос
/ 08 июня 2010

Я использую следующее регулярное выражение (из http://www.simple -talk.com / dotnet / asp.net / регулярное-выражение-base-token-replacement-in-asp.net / )

(? [^ \ $] *?) \ ((?: (? . **?) (?:, | (? = \)))) *?)

работает нормально, за исключением случаев, когда я должен включать скобки в такие параметры, как " hello renderHTML (" "GetData (12)" ")"

, поэтому я хочу«GetData (12)» вместо этого я получаю «GetData (12».

Есть ли способ игнорировать любые совпадения, если они заключены в двойные кавычки?

1 Ответ

1 голос
/ 08 июня 2010

Есть способы игнорировать парены внутри кавычек, но это не решит вашу проблему.Вызовы функций в C # не могут быть сопоставлены с регулярным выражением.Регулярные выражения не могут совпадать с вложенными структурами, так как они означают, что оба символа и < появляются внутри вызова функции.Чтобы соответствовать этим, вам нужно использовать грамматику своего рода.

Я недавно написал пост в блоге, в котором более подробно рассказывается об этой проблеме

Я не имею в видучтобы избежать ответа здесь.Но любой ответ на этот вопрос будет просто нарушен более сложным (а иногда и более простым) вызовом функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...