1
我有幾百萬類似下面的行後:刪除一切有10位數字的正則表達式
0032 0001 0020413300 0001 BLUE OVERCOAT CC P
我設法通過使用之前刪除的文字:
.*(?=\d{10})
後刪除一切我想這一點:
\d{10}.*
但它選擇號碼&之後的一切。我該如何離開號碼並選擇一切?
我有幾百萬類似下面的行後:刪除一切有10位數字的正則表達式
0032 0001 0020413300 0001 BLUE OVERCOAT CC P
我設法通過使用之前刪除的文字:
.*(?=\d{10})
後刪除一切我想這一點:
\d{10}.*
但它選擇號碼&之後的一切。我該如何離開號碼並選擇一切?
使用捕獲組:
(\d{10}).*
與$1
取代。見the regex demo。
還要考慮使用單詞邊界匹配10位數字作爲一個整體詞:
\b(\d{10})\b.*
如果您使用的是Notepad ++,則可以使用\K
將匹配的文本放在其位置:\b\d{10}\b\K.*
並替換爲空字符串。或者向後看:(?<=\b\d{10}\b).*
。
*仍然*選擇數字,我需要保持數字。編輯:K. *作品,謝謝。 – Rosenberg
所有的解決方案將保持數量。演示添加到答案。 –
你可以用。*(\ d {10})。*來匹配所有(在組之前和之後),並以$ 1替換。 – mquantin