我有以下正則表達(dá)式模式:@"^((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})$/gm"它應(yīng)該替換字符串,例如:1020304010 20 30 40+45 10 20 30 40+4510203040這是我的替換方法:var text = "10 10 10 10";
text = Regex.Replace(text, @"^((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})$/gm", "****");上面的代碼返回“****”哪個(gè)是對(duì)的。var text = "10 10 10 10 10203040";
text = Regex.Replace(text, @"^((\(?\+45\)?)?)(\s?\d{2}\s?\d{2}\s?\d{2}\s?\d{2})$/gm", "****");上面的代碼不會(huì)替換任何文本,只是返回原始字符串 - 我需要此代碼返回“**** ****”,因?yàn)槲倚枰臄?shù)字出現(xiàn)了兩次匹配。我希望有人能幫助我 - 提前致謝:)
1 回答

猛跑小豬
TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊
您已將正則表達(dá)式錨定到行的開頭 (^
) 和結(jié)尾 ($
),因此它們只會(huì)在以下情況下執(zhí)行替換:匹配的字符串是整行。刪除錨點(diǎn),它應(yīng)該按預(yù)期工作。
- 1 回答
- 0 關(guān)注
- 176 瀏覽
添加回答
舉報(bào)
0/150
提交
取消