正则表达式用于匹配字符串和其他数字之间的数字



是否可以只匹配字符串和其他数字之间的数字?

RO41 RNCB 0089 0957 6044 0001 FPS21098343 RO17 BTRL 0470 1202 W949 45XX

我想要的:21098343

我在尝试什么LINK:[0-9]{4}s*S+s+(S+)

结果:FPS21098343

任何帮助都非常感谢!谢谢。

如果数字位于字符串$的末尾,您可以使用:

bd{4}s+[A-Z]+(d+)$

Regex演示

或者您可以匹配数字前面的大写字符,并捕获捕获组1中的数字,如果它不在字符串的末尾,后面没有空格和数字:

bd{4}s+[A-Z]+(d+)b(?!s+d)
  • bd{4}s+字边界,匹配4位数字和1+空格
  • [A-Z]+(d+)b匹配1+大写字符和捕获1+数字
  • (?!s+d)

Regex演示

只匹配前面有3个大写字母的数字。

(?<=[A-Z]{3})([d]+)

示例在这里运行

相关内容

最新更新