1. 程式人生 > >C#正則表示式只替換指定第幾次匹配…

C#正則表示式只替換指定第幾次匹配…

因工作需要,對資料中第N次出現的詞彙進行替換,如:ab12cde12fg,將第二次匹配到的“12”替換為XX,則結果為:ab12cdeXXfg。

查閱了正則表示式的說明文件,久經嘗試得出如下正則表示式:

^.*?(12.*?){1,1}(?12)

使用此正則表示式進行匹配,使用自定義替換規則MatchEvaluator,即可有針對性的對第2次出現的12進行替換。