如何从数字中删除最后一位-REGEX

时间:2018-08-29 06:39:52

标签: regex

我必须找到前11位数字,并切掉所有从第11位开始的数字。

我一直在尝试使用:/^(\d{11}.*?)模式。但是,不起作用。

您知道我在做什么错吗?

3 个答案:

答案 0 :(得分:1)

如果要匹配第一个字符,则需要使用锚点^,该锚点将匹配字符串的开头。

如果要匹配某项然后再使用它,则需要捕获其iside捕获组,并与\1一起使用。

如果您想捕获11位数字-\d{11}将很适合您。

因此,总而言之,您需要模式^(\d{11}).*并替换为\1.*将匹配0个或更多字符(任意)。

答案 1 :(得分:1)

根据您的正则表达式口味,可以使用:

  • 查找:^\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

答案 2 :(得分:0)

经过大量尝试,它实际上适用于此:

^(?=(\d{11})).+?