zoukankan      html  css  js  c++  java
  • 在 Visual Studio 中使用正则表达式

    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”一次匹配。                                       

    将匹配字符串锚定到行尾                                       

    ?$                                       

    $

    End ?$ 只有出现在行尾时才与“end”匹配。                                       

    匹配一个集合中的任意单个字符                                       

    [abc]                                       

    [abc]                                       

    “b[abc]”匹配“ba”、“bb”和“bc”。                                       

    匹配字符范围内的任意字符                                       

    [a-f]                                       

    [x-y]                                       

    be[n-t] 匹配 "between" 中的 "bet", "beneath" 中的 "ben", 和 "beside" 中的 "bes", 但不匹配 "below"。

    获取包含在圆括号内的表达式并对其进行隐式编号                                       

    ()                                       

    ()                                       

    “([a-z])X1”与“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”匹配。                                       

    匹配字边界                                       

    “”(在字符类  之外指定字边界,并在字符类指定 Backspace)。                                       

    <”和“>”指定单词的开头和结尾                                       

    “in”与“inside”中的“in”匹配,但与“pinto”不匹配。                                       

    匹配换行符(即,回车后跟一个新行)。                                       

    ?                                        

                                           

    “End ? Begin”仅当“End”是一行中的最后一个字符串和“Begin”是下一行中的第一个字符串时匹配单词“End”和“Begin”。                                       

    匹配任何字母数字字符                                       

    w                                       

    :a                                       

    “awd”与“add”和“a1d”匹配,但不匹配“a d”。                                       

    匹配任何空白字符。                                       

    (?([^ ])s)                                       

    :b                                       

    “PublicsInterface”匹配短语“Public Interface”。                                       

    匹配任何数字字符                                       

    d                                       

    :d                                       

    “d”与和“3456”中的“3”、“23”中的“2”和“1”中的“1”匹配。                                       

    匹配 Unicode 字符                                       

    uXXXX,其中 XXXX 表示 Unicode 字符值。                                       

    uXXXX,其中 XXXX 表示 Unicode 字符值                                       

    u0065 匹配字符“e”。                                       

    匹配标识符                                       

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

    :i                                       

    与“type1”匹配,而不是与“&type1”或“#define”。                                       

    匹配引号中的字符串                                       

    ((".+?")|('.+?'))                                       

    :q                                       

    匹配单引号或双引号中的任意字符串。                                       

    匹配十六进制数                                       

    0[xX]([0-9a-fA-F])                                       

    :h                                       

    匹配“0xc67f”,不匹配“0xc67fc67f”。                                       

    匹配整数和小数                                       

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

    :n                                       

    匹配“1.333”。                    

      code lines:  ?$

      空白行:  ^[ s]*$

  • 相关阅读:
    [转]linux下的fms2流媒体服务器搭建六部曲之四格式转换篇
    Linux 信号signal处理函数
    FMS在linux下安装时的问题处理
    Linux 下让你的C程序在后台运行
    Linux 信号signal处理机制
    Flash Media Server 2 无限制许可文件
    JavaScript动态控制网页元素事件
    自定义MessageBox的窗口颜色,字体等属性
    [转]linux下的fms2流媒体服务器搭建六部曲之一ffmpeg安装篇
    [转]linux下的fms2流媒体服务器搭建六部曲之三FlashMediaServer安装篇
  • 原文地址:https://www.cnblogs.com/gaobing/p/4219910.html
Copyright © 2011-2022 走看看