标签:
Visual Studio 使用 .NET framework 正则表达式查找和替换文本。
在 Visual Studio 2010 和早期版本中,Visual Studio 在“查找和替换”窗口中使用自定义正则表达式语法。 本主题介绍如何将一些更常用的自定义正则表达式符号转换为 .NET 版本。
| 
 用途  | 
 新建  | 
 旧  | 
 新示例  | 
|---|---|---|---|
| 
 匹配任何单个字符(分行符除外)  | 
 .  | 
 .  | 
 a.o 匹配“around”中的“aro”和“about”中的“abo”,但不匹配“across”中的“acro”。  | 
| 
 匹配前面表达式的零个或更多匹配项(并匹配尽可能多的字符)  | 
 *  | 
 *  | 
 a*r 匹配 "rack" 中的 "r", "ark" 中的 "ar" 和 "aardvark" 中的 "aar"  | 
| 
 匹配任何字符零次或多次(通配符 *)  | 
 .*  | 
 .*  | 
 c.*e 匹配“racket”中的“cke”,“comment”中的“comme”,和“code”中的“code”。  | 
| 
 匹配前面表达式的一个或更多匹配项(并匹配尽可能多的字符)  | 
 +  | 
 +  | 
 e.+e 与“feeder”中的“eede”而不是“ee”匹配。  | 
| 
 匹配任一字符一次或多次(通配符 ?)  | 
 .+  | 
 .+  | 
 e.+e 匹配字符串"feeder"中的"eede",但是不匹配"ee"  | 
| 
 匹配前面表达式的零个或更多匹配项(并匹配尽可能少的字符)  | 
 *?  | 
 @  | 
 e.*?e 与“feeder”中的“ee”而不是“eede”匹配。  | 
| 
 匹配前面表达式的一个或更多匹配项(并匹配尽可能少的字符)  | 
 +?  | 
 #  | 
 “e.+?e”匹配“enterprise”中的“ente”和“erprise”,但不匹配完整的单词“enterprise”。  | 
| 
 将匹配字符串锚定到行首或字符串首。  | 
 ^  | 
 ^  | 
 ^car 仅当其在行首出现时才与“car”一次匹配。  | 
| 
 将匹配字符串锚定到行尾  | 
 \r?$  | 
 $  | 
 End\r?$ 只有出现在行尾时才与“end”匹配。  | 
| 
 匹配一个集合中的任意单个字符  | 
 [abc]  | 
 [abc]  | 
 “b[abc]”匹配“ba”、“bb”和“bc”。  | 
| 
 匹配字符范围内的任意字符  | 
 [a-f]  | 
 [x-y]  | 
 be[n-t] 匹配 "between" 中的 "bet", "beneath" 中的 "ben", 和 "beside" 中的 "bes", 但不匹配 "below"。  | 
| 
 获取包含在圆括号内的表达式并对其进行隐式编号  | 
 ()  | 
 ()  | 
 “([a-z])X\1”与“aXa”和“bXb”匹配,但与“aXb”不匹配。".“\1”是指第一个表达式组“[a-z]”。  | 
| 
 匹配无效  | 
 (?!abc)  | 
 ~(abc)  | 
 “real (?!ity)”匹配“realty”和“really”中的“real”,但不匹配“reality”中的“real”。它还在“realityreal”中找到第二个“real”(但不是第一个“real”)。  | 
| 
 匹配不在给定字符集中的任意字符  | 
 [^abc]  | 
 [^abc]  | 
 “be[^n-t]”匹配“before”中的“bef”、“behind”中的“beh”和“below”中的“bel”,但是不匹配“beneath”。  | 
| 
 匹配符号之前或之后的那个表达式。  | 
 |  | 
 |  | 
 (sponge|mud) bath 匹配“sponge bath”和“mud bath”。  | 
| 
 对反斜杠之后的字符进行转义  | 
 \  | 
 \  | 
 ^ \ 匹配 ^ 字符。  | 
| 
 指定前一个字符或组出现的次数  | 
 {x},其中 x 是指出现的次数  | 
 \x,其中 x 是指出现的次数  | 
 x(ab){2}x 匹配“xababx”,x(ab){2,3}x 匹配“xababx”和“xabababx”而非“xababababx”。  | 
| 
 匹配 Unicode 字符类中的文本,文本中的“X”为 Unicode 数字。 有关 Unicode 字符的更多信息,请参见  | 
 \p{X}  | 
 :X  | 
 “\p{lu}”与“Thomas Doe”中的“T”和“D”匹配。  | 
| 
 匹配字边界  | 
 “\b”(在字符类 \b 之外指定字边界,并在字符类指定 Backspace)。  | 
 “<”和“>”指定单词的开头和结尾  | 
 “\bin”与“inside”中的“in”匹配,但与“pinto”不匹配。  | 
| 
 匹配换行符(即,回车后跟一个新行)。  | 
 \r?\n  | 
 \n  | 
 “End\r?\nBegin”仅当“End”是一行中的最后一个字符串和“Begin”是下一行中的第一个字符串时匹配单词“End”和“Begin”。  | 
| 
 匹配任何字母数字字符  | 
 \w  | 
 :a  | 
 “a\wd”与“add”和“a1d”匹配,但不匹配“a d”。  | 
| 
 匹配任何空白字符。  | 
 (?([^\r\n])\s)  | 
 :b  | 
 “Public\sInterface”匹配短语“Public Interface”。  | 
| 
 匹配任何数字字符  | 
 \d  | 
 :d  | 
 “\d”与和“3456”中的“3”、“23”中的“2”和“1”中的“1”匹配。  | 
| 
 匹配 Unicode 字符  | 
 \uXXXX,其中 XXXX 表示 Unicode 字符值。  | 
 \uXXXX,其中 XXXX 表示 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[0-9]*\.*[0-9]+\b  | 
 :n  | 
 匹配“1.333”。  | 
code lines :^[\r\n\s]*[^\r\n\s#/]+.*$
空白行: ^[\r\n\s]*$
标签:
原文地址:http://www.cnblogs.com/gaobing/p/4219910.html