c#正則表達式替換


替換規則:

  替換中包含原部分逐句,可以用分組的方式來替換,用?<組名>來標記需要記錄的數據,在替換的時候使用

${組名} 或者 <組名> 來加載這部分數據。

例如:

替換:<img>abc</img>為  [圖片]abc 或者 <img>bcd</img>為  [圖片]bcd

方法:Regex.Replace(“<img>abc</img>”,@“<img>(?<str>.*?)</img>”,"[圖片]${str}");

 

有時有些字符只需要作為占位規則,而不需要替換,那么就需要用到下面這種規則:

(?<=...)表示前置占位但不匹配 (?=...)表示后置占位但不匹配

例如:

替換:<img src="file://c:\abc.png"></img>為:  <img src="guid"></img>

這里需要滿足是一個圖片標簽,所以需要用到占位匹配,但又並不替換掉這些占位符,所以如下:

           string input = @"<img src=""file://c:\abc.png""></img>";
           string pattern = @"(?<=<img src="").+?(?=""></img>)";
           string replacement = "guid";
           var val = Regex.Replace(input, pattern, replacement);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM