Использование регулярных выражений в Visual Studio

Visual Studio 2012 использует регулярные выражения платформы .NET Framework для поиска и замены текста.В Visual Studio 2010 и в более ранних версиях Visual Studio, применяемый пользовательский синтаксис регулярного выражения в окне найти и заменить.В этом разделе объясняется, как преобразовать некоторые из наиболее использование пользовательских знаков регулярных выражений в версии .NET.

СоветСовет

В операционных системах windows, большинство линии выполнить в «\ r \ n» (возврат каретки, за которым следует создать линия).Эти символы не отображаются, но присутствующие в редакторе и передаются в службу регулярных выражений платформы .NET.

Дополнительные сведения см. в разделе Регулярные выражения в .NET Framework.

СоветСовет

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

Регулярные выражения Comparing.NET .NET Framework

Можно преобразовать регулярные выражения от версии, используемой в предыдущих версиях Visual Studio с регулярными выражениями платформы .NET Framework с помощью следующей таблицы.

Назначение

New

Старо

Новый пример

Соответствует одному символу (за исключением разрывов строк)

.

.

а.о совпадает с "ато" в слове "каток" и "aзo" в слове "азот", но не с "арто" в слове "картон".

Соответствие нулем или большим числом вхождений предыдущего выражения (соответствие столько знаков, сколько возможно)

*

*

a*r «r» в «стеллаже», «ar» в «ковчеге» и «Ааре» в «трубкозубе»

Соответствует любому знаку ноль или более раз (подстановочный знак *)

.*

.*

c.*e «cke» в «ракетке», «comme» в «примечания» и «код» в «код»

Соответствует одному или нескольким вхождениям предыдущего выражения (соответствие столько знаков, сколько возможно)

+

+

e.+e «eede» в «фидере», но не «ee».

Соответствует любому знаку один или более раз подстановочный знак (?)

.+

.+

e.+e «eede» в «фидере», но не «ee».

Соответствие нулем или большим числом вхождений предыдущего выражения (совпадение как можно меньшее число знаков, возможно)

*?

@

e.*? e «ee» в «фидере», но не «eede».

Соответствует одному или нескольким вхождениям предыдущего выражения (совпадение как можно меньшее число знаков, возможно)

+?

#

e.+? e «ente» и «erprise» в «enterprise edition», но не слову «установок» целого.

Привязка, содержащая совпадения в начале линии или зашнуруйте

^

^

^car соответствует слову «авто», только когда он отображается в начале линии.

Привязка, содержащая совпадения в конец линии

\ r? $

$

Совпадения элемент \ r? $ «завершение», только когда он отображается в конце линии.

Соответствует одному символу в наборе

[abc]

[abc]

b [abc] «ba», «bb» и «bc».

Соответствует любому символу в диапазоне символов

[a-f]

[x-y]

Совпадения [n-t] «держали пари» в «между», «ben» в «в» и «bes» в «near», но не «в разделе».

Перенаправление и неявно пронумеруйте выражение, содержащееся внутри скобок

()

()

[a-z] (\ 1) x «aXa» и «bXb», но не «aXb». ".«\ 1 " ссылается первая группа выражений «[a-z]».

Недействительным соответствие

(?! abc)

| (abc)

real (?! ity) «real» в «недвижимости» и «являются», но не в самом деле «.»

Соответствует всем символам, которые отсутствуют в заданном наборе символов

[^abc]

[^abc]

[^n-t] «bef» в «до», «beh» в «,» и «белу» в «в разделе», но не «в разделе».

Совпадение с выражением до или после символа или одному ".

|

|

(хвойный|лиственный) лес совпадает со строками "хвойный лес" и "лиственный лес".

Экранировать символ после обратной косой черты

\

\

^ \ соответствует символа ^.

Укажите количество вхождений предыдущих символа или группы

{x}, где x - число вхождений

\ x, где x - число вхождений

x (ab) {2} - x «xababx» и «соответствует xababx» и «xabababx», но не «xababababx» x (ab) {2, 3} - x.

Соответствие текста в классе символов юникода, где «x» номер в юникоде.Дополнительные сведения о классах юникода см. в разделе

Свойства символов стандарта юникод 5,2.

\ p {x}

. x

\ p {Lu} «t» и «D» в «лани Томаса».

Соответствие границы слова

\ b (за пределами класса символов \ b определяет границы слова и в символьный класс определяет возврат).

< и > определяющих начало и конец слова

\ bin «в» в «в», но не «pinto».

Соответствие разрыву строки (ie возврат каретки после создания линия).

\ r?\n

\n

Совпадения элемент \ r? \ nBegin «выполнить» и «begin», только когда последняя строка «элемент» линия " и «begin» первая строка в следующей линии.

Соответствует любому знаку цифробуквенному

\w

:a

Совпадения wd - a \ «добавить» и «a1d», но не «d».

Соответствует любому знаку пробела.

(? ([^ \ r \ n]) \ s)

:b

Public \ sInterface соответствует интерфейсу фразе «public».

Соответствует любому знаку numeric

\d

:d

Совпадения и \ d «3» в «3456», «2» 23 " и «1» в «1».

Соответствие символ юникода

\, где задает значение символа юникода.

\, где задает значение символа юникода

\u0065 совпадает со знаком "e".

Соответствует идентификатору

\ b \ w+ (_|[\ w-] \ [0-9_]) w* \ b

:i

Match «тип 1 ", но не и печатает - 1 " или «#define».

Соответствие строке внутри кавычек

((\». +?\ ")|(+? ". "))

:q

Соответствует всем предложениям кавычек внутри строки в одинарные или double.

Соответствует шестнадцатеричному числу

b0 xx] \ [([0-9a-fA-F]) \ b

:h

Выражение «0xc67f», но не «0xc67fc67f».

Целые числа и десятичные числа соответствий

\ b \. [0-9] ** [0-9] + \ b

:n

Match «1,333 ".

См. также

Другие ресурсы

Поиск и замена текста