在10位数字正则表达式

时间:2017-04-04 11:29:44

标签: regex

我有数百万行,如下所示:

0032       0001        0020413300               0001           BLUE OVERCOAT               CC                 P

我设法通过使用以下方法删除了文本:

.*(?=\d{10})

要删除之后的所有内容我试试这个:

\d{10}.*

但它正在选择数字&之后的一切。如何保留号码并选择之后的所有内容?

1 个答案:

答案 0 :(得分:1)

使用捕获组:

(\d{10}).*

并替换为$1。请参阅the regex demo

还可以考虑使用单词边界将10位数字作为整个单词进行匹配:

\b(\d{10})\b.*

请参阅another regex demo

如果您使用的是Notepad ++,则可以使用\K将匹配的文本放在其位置:\b\d{10}\b\K.*并替换为空字符串。或者是后视:(?<=\b\d{10}\b).*

请参阅yet another demo