在 Visual Studio 中使用規則運算式
Visual Studio 2012 使用 .NET Framework 規則運算式尋找和取代文字。在 Visual Studio 2010 (含) 以前版本,則 Visual Studio 會在您無法自訂規則運算式語法和取代] 視窗。本主題說明如何將某些較常用的自訂規則運算式符號的 .NET 版本。
提示 |
---|
在 Windows 作業系統中,大多數程式碼中的「\ r \ n」結尾 (新行之前的歸位字元 (Carriage Return)。這些字元不可見,,而是出現在編輯器和傳遞至 .NET 規則運算式服務。 |
如需詳細資訊,請參閱 .NET Framework 規則運算式。
提示 |
---|
如需在取代模式的規則運算式的詳細資訊,請參閱 在規則運算式中執行替代。 |
Comparing.NET Framework 規則運算式
您可以將轉換從與舊版 Visual Studio 的這個版本的規則運算式轉換成 .NET Framework 規則運算式使用下表。
用途 |
新增 |
舊 |
新的範例 |
---|---|---|---|
比對任何單一字元 (不分行符號) |
. |
. |
a.o 比對出 "around" 中的 "aro" 和 "about" 中的 "abo",而不是 "across" 中的 "acro"。 |
比對先前運算式中零或多個項目 (符合許多字元盡可能) |
* |
* |
在a*r 「電腦架構」, 「ar」平底船」和「阿勒河」與「r」、「土豚」 |
比對任何字元零次或多次萬用字元 (*) |
.* |
.* |
c.*e 會比對「cke」# 「球拍」, comme」中的「註解」和「程式碼」在「程式碼」 |
比對先前運算式中一或多個項目 (符合許多字元盡可能) |
+ |
+ |
在e.+e 「不是送紙器」,但不會比對「ee」比對「eede」。 |
比對任何字元一次或多次萬用字元 (?) |
.+ |
.+ |
在 e.+e 「不是送紙器」,但不會比對「ee」比對「eede」。 |
比對先前運算式中 (字元越少越好比對出現零次或多次的盡可能) |
*? |
@ |
e.*? e 符合「ee」不是送紙器」,但不會比對「eede」。 |
比對先前運算式中 (字元越少越比對的一或多個項目盡可能) |
+? |
# |
e.+? e 符合「ente」和「erprise」中的「企業中,」,但不是單字「enterprise」。 |
將比對字串錨定至行或字串的開頭。 |
^ |
^ |
,只有在一行的開頭時,它會出現^car 會比對「auto」。 |
將比對字串錨定至行尾 |
\ r? $ |
$ |
,但它必須出現在行的結尾時,結束\ r? $ 符合「End」。 |
比對集合中的任何單一字元 |
[] abc |
[] abc |
將 abc 「bc」比對「ba」, 「bb」,也就是和。 |
比對字元範圍內的任何字元 |
[] a-f |
[x-y] |
為 n-t 會比對「bet」中的「之間」, 「beneath」中的「ben」和「bes」中的「,但是, 「bel」。 |
擷取和隱含編號在括號內的運算式 |
() |
() |
([]) a-z X \ 1 會比對「aXa "和「不是 bXb」,但是「, aXb」。「.「\ 1 "表示第一個運算式群組 a-z 「[]」。 |
無效的相符項目。 |
(?! abc) |
| (abc) |
虛擬 (?! ity) 「實際」與「reality」中的「real」和屬性,而不是「real "」。 |
比對不在指定的一組字元的所有字元。 |
[] ^abc |
[] ^abc |
為 ^n-t 符合「bef」中的「Before」, 「beh」中的「Back」和「below」中的「ben」,但是, 「bel」。 |
在字元後面先前比對運算式或其中一個。 |
| |
| |
(sponge|mud) bath 會比對 "sponge bath" 和 "mud bath"。 |
逸出反斜線之後的字元 |
\ |
\ |
\ ^ 符合^字元。 |
指定在前置字元或群組的發生次數。 |
{x},其中 x 是發生次數。 |
\ x,其中 x 是發生次數。 |
X (ab {} x 2) 會比對「xababx」和 X (ab) {2, 3} x 會比對「xababx」和「不是 xabababx」,但不會比對「xababababx」。 |
比對 Unicode 字元類別中, 「X」是 Unicode 數字。如需 Unicode 字元類別的詳細資訊,請參閱 |
\p{X。 |
: x |
\p{Lu。 符合「T」和「D」中的「括住數字、Doe」。 |
比對字緣 |
\ b (在字元類別之外\ b "這個字,,和內的字元類別指定退格鍵)。 |
< 和 > 指定字的開頭和結尾 |
\ bin \ debug。 相符「中的」中的「real 位於」,但不會比對「所強制」。 |
比對分行符號 (ie 新行之前的歸位字元 (Carriage Return)。 |
\ r?\n |
\n |
結束\r?\nBegin 符合「End」,而「啟動」,但「End」必須是該行的最後一個字串和「Begin」是下一行的第一個字串。 |
比對任何英數字元 |
\w |
:a |
wd \。 會比對「加入」和「a1d」,但不會傳回「d」。 |
比對任何泛空白字元。 |
(? ([^ \ r \ n)] \ s) |
:b |
公用\sInterface 符合這個片語「Public Interface」。 |
比對任何數字字元 |
\d |
:d |
"加入 符合和「3 "、「3456 ", 「2 "、" 23 「和" 1 "、「1 "。 |
比對 Unicode 字元 |
字元值。 |
字元值。 |
\u0065 會比對字元 "e"。 |
比對識別項 |
\b(_\w+|[\w-[0-9_]]\w*)\b |
:i |
會比對「type1」,但不會& type1」或「#define」。 |
比對字串中引號 |
((\」。+?\ ")。|(「。+? 」)) |
:q |
比對單引號或雙引號內的任何字串。 |
比對十六進位數字 |
\b0[xX]([0-9a-fA-F] \ b) |
:h |
會比對「不是 0xc67f」,但不會比對「0xc67fc67f」。 |
比對整數和小數位數 |
\ b *、\。[] *、+ \ b |
:n |
會比對「1.333 "。 |