我必须找到前 11 位数字,并从第 11 位数字中删除后面的所有内容。
我一直在尝试用这种模式来做:/^(d{11}.*?)
.但是,不起作用。
你知道我做错了什么吗?
根据您的正则表达式风格,您可以使用:
- 查找:
^d{11}K.+$
- 替换:
NOTHING
解释:
^ : beginning of line
d{11} : 11 digits
K : forget all we have seen until this position
.+ : 1 or more any character
$ : end of line
如果要匹配第一个字符,则需要使用将在字符串开头锚定匹配的锚点^
。
如果你想匹配某些东西然后重用它,那么你需要捕获它,并在1
的sbstitution中使用它。
如果您想捕获十一位数字 -d{11}
将为您工作。
所以总结一下,你需要模式^(d{11}).*
并替换为1
。.*
将匹配 0 个或多个字符(任意(。
经过大量尝试,它实际上适用于这个:
^(?=(d{11})).+?