2010-08-23 2 views
3

I требуется регулярное выражение для Visual Studio Поиска и заменой функциональности следующим образом:Regular Expression в Visual Studio Найти и заменить - несколько пробелов между поисковыми терминами

Поиска на следующий срок: sectorkey в (

Там может быть несколько пробелов между каждым из указанных выше 3 условия поиска, или даже несколько разрывов строк/возврат каретки.

термин поиска ищет заявления SQL, которые жестко Secto значения rKey внутри SQL в инструкции. Они должны быть заменены оператором SQL-соединения - это будет сделано вручную.

ответ

5

Маленькая стрелка справа от поля «Найти» - это ваш друг и может помочь вам с капризами синтаксиса регулярных выражений MS.

Newline представлен \n, так что вы можете просто сделать sectorkey(|\n)+in(|\n)+\( (Вы должны избежать открытой скобки в вашем выражении поиска, так что используются в группировке.)

2

Вы можете использовать \s+ для поиска одного или нескольких смежных символов пробела (включая вкладки, CR, LF и т. Д.), Поэтому ваше регулярное выражение, по-видимому, будет выглядеть примерно как sectorkey\s+in\s+\(.

Edit ...

Как Джо отмечает в своем комментарии, кажется, что Visual Studio не поддерживает \s в Находке/Заменить выражения, в этом случае вам, возможно, придется использовать что-то вроде [\n:b]. Регулярное выражение тогда станет sectorkey[\n:b]+in[\n:b]+\(.

+2

Я не думаю, что Visual Studio поддерживает \ s. См. Http://msdn.microsoft.com/en-us/library/2k3te2cs(VS.80).aspx –

3

Я считаю :Wh+ является то, что вы хотите. Экспериментальный эффект Visual Studio очень странный; вы получите лучшие результаты, если обратитесь к official reference. Экспертиза с регулярными выражениями «mainstream» имеет тенденцию быть скорее помехой, чем помощь, когда дело касается VS.

+0

Ха-ха слишком правдивый о препятствиях. –

Смежные вопросы