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 字符的更多信息,请参见

Unicode 标准 5.2 字符属性

\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?$

空白行:  ^[\r\n\s]*$

在 Visual Studio 中使用正则表达式的更多相关文章

  1. 在Visual Studio中使用正则表达式匹配换行和批量替换

    系统环境:Windows 8.1 Enterprise Update 2 x64 开发环境:Mircosoft Visual Studio Ultimate 2013 Update 2 RC 问题:如 ...

  2. visual Studio 中使用正则表达式来进行查找替换

    1.打开visual Studio 2. 通过菜单Edit -->Find and Replace -->Replace In File  ,或者使用  ctrl + Shift + H  ...

  3. Visual Studio 中使用的正则表达式 说明

    Visual Studio 中使用的正则表达式 说明 2013-10-11 21:10:12|  分类: VB和VBA知识|举报|字号 订阅       参考:详解Visual Studio正则替换大 ...

  4. 如何在 Visual Studio 中使用 Git 同步代码到 CodePlex

    开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framework.ASP.Net MVC等框架的逐渐开源,也让大家看到了微软开源的步伐.CodePlex 则是 ...

  5. Visual Studio 中 Build 和 Rebuild 的区别

    因为之前写的程序比较小,编译起来比较快,所以一直都没有太在意 Build 和 Rebuild 之间的区别,后来发现两个还是有很大不同. Build 只针对在上次编译之后更改过的文件进行编译,在项目比较 ...

  6. [No0000AE]在 Visual Studio 中调试 XAML 设计时异常

    在 Visual Studio 中进行 WPF, UWP, Silverlight 开发时,经常会遇到 XAML 设计器由于遭遇异常而无法正常显示设计器视图的情况.很多时候由于最终生成的项目在运行时并 ...

  7. Visual Studio中创建混合移动应用程序解决方案Xamarin Portable Razor

    在Visual Studio中创建混合移动应用程序的一个解决方案是使用Xamarin Portable Razor工具,这是ASP.NET MVC API针对移动设备的一个轻量级实现.Xamarin编 ...

  8. 对 Visual Studio 中的Resharper禁用对某种文件的检测

    原因:在Visual Studio中安装Reshaper后,就会对各种文件进行代码检测,但是因为Reshaper更新的速度不是很及时,所以有时会对Visual Studio中某些新功能误断,导致Cod ...

  9. 在Chrome+Visual Studio中调试asp.net程序很慢的问题(Firefox也有类似问题)

    在Chrome+Visual Studio中调试asp.net程序很慢的问题(Firefox也有类似问题) 今天开始起在Chrome中调试,发现问题主要出在菜单栏(layout文件)中,google了 ...

随机推荐

  1. PowerDesigner 建表语句没出现字段描述

    填写了Name 还是没有 修改步骤如下:

  2. CF757G Can Bash Save the Day?

    CF757G Can Bash Save the Day? #include<bits/stdc++.h> #define RG register #define IL inline #d ...

  3. [洛谷P1714]切蛋糕

    题目大意:给你n个整数,求出其中长度不超过m的最大字段和. 题解:单调队列维护前缀和最小值,然后用当前值减去当前有效最小值即可 C++ Code: #include<cstdio> usi ...

  4. ARC072 D Alice&Brown 博弈论

    ---题面--- 题解: 题目大意:有2堆石子数分别为x, y的石子,你每次可以从中间的某一堆中取出2i个石子,扔掉i个,并把剩下的i个放到另一堆,无法操作的人就输了. 现在给定x,y,判断先手必赢还 ...

  5. POJ1990:MooFest——题解

    http://poj.org/problem?id=1990 题目大意:定义一对在树轴上的点,每对点产生的值为两点权值最大值*两点距离,求点对值和. 显然n*n复杂度不行,我们需要用树状数组维护两个东 ...

  6. BZOJ4754 & 洛谷4323 & LOJ2072:[JSOI2016]独特的树叶——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4754 https://www.luogu.org/problemnew/show/P4323 ht ...

  7. ZOJ3874 Permutation Graph 【分治NTT】

    题目链接 ZOJ3874 题意简述: 在一个序列中,两点间如果有边,当且仅当两点为逆序对 给定一个序列的联通情况,求方案数对\(786433\)取模 题解 自己弄了一个晚上终于弄出来了 首先\(yy\ ...

  8. bzoj1045: [HAOI2008] 糖果传递(思维题)

    首先每个人一定分到的糖果都是所有糖果的平均数ave. 设第i个人给i-1个人Xi个糖果,则有Ai-Xi+X(i+1)=ave. 则A1-X1+X2=ave,A2-X2+X3=ave,A3-X3+X4= ...

  9. bzoj 3673&3674 可持久化并查集&加强版(可持久化线段树+启发式合并)

    CCZ在2015年8月25日也就是初三暑假要结束的时候就已经能切这种题了%%% 学习了另一种启发式合并的方法,按秩合并,也就是按树的深度合并,实际上是和按树的大小一个道理,但是感觉(至少在这题上)更好 ...

  10. JQuery仿淘宝滚动加载图片

    用 JQuery 制作随着显示页面的滚动条的滚动动态加载图片,适用于图片太多的页面,在访问网页时,可以先只加载第一屏要显示的图片,当用户进行向下滚动查看页面的时候,动态去加载这些图片,好处是减少页面第 ...