现在的位置: 首页 > web前端 > 正文

正则表达式替换的功能

2020年07月20日 web前端 ⁄ 共 1015字 ⁄ 字号 评论关闭

  正则表达式,又称规则表达式。(英语:RegularExpression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。


  正则表达式匹配并替换


  输入:public<%=classname%>Extension:IExt


  目的:匹配<%=%>中间的classname并替换


  表达式:<%=.*%>


  代码:


  privatestringReplace(stringinput)


  {


  returnRegex.Replace(input,@"<%=.*%>",newMatchEvaluator(RefineCodeTag),RegexOptions.Singleline);


  }


  stringRefineCodeTag(Matchm)


  {


  stringx=m.ToString();


  x=Regex.Replace(x,"<%=","");


  x=Regex.Replace(x,"%>","");


  returnx.Trim()+",";


  }


  截图:


  2


  正则表达式选项RegexOptions:


  ExplicitCapture


  n 


  只有定义了命名或编号的组才捕获


  IgnoreCase i 不区分大小写


  IgnorePatternWhitespace x 消除模式中的非转义空白并启用由#标记的注释。


  MultiLine m 


  多行模式,其原理是修改了^和$的含义


  SingleLine s 


  单行模式,和MultiLine相对应


  正则表达式替换的其他功能:


  $number 把匹配的第number组替换成替换表达式


  这段代码返回的是“010120305”


  就是说,对组一的每个匹配结果都用"0$1"这个表达式来替换,"0$1"中"$1"由组1匹配的结果代入


  publicstaticvoidMain()


  {


  strings="11235";


  s=Regex.Replace(s,@"(\d+)(?#这个是注释)","0$1",RegexOptions.Compiled|RegexOptions.IgnoreCase);


  Console.WriteLine(s);


  Console.ReadLine();


  总之,正则表达式替换给大家简单的介绍了一些,希望大家多看看。

抱歉!评论已关闭.