正则表达式匹配 4 位数字之前的所有内容

Regex matching everything before 4 digits

在连续 4 位数字出现在某处之前匹配所有内容的正则表达式是什么,但也包括匹配中的 4 位数字?

我认为这个正则表达式应该足够好:

(^.*?\d{4})

解释:

^ 断言字符串开头的位置

.*? 匹配任何字符

\d{4} 匹配数字 [0-9] 四次

查看这里的工作:https://regex101.com/r/gO0aT9/1

您可以使用具有 2 个捕获组的正向先行。

例如:

^(?=((.+)[0-9]{4}))$

https://regex101.com/r/dR4oQ7/1


考虑到一个答案是 posted,我想我会 post 我自己的答案,即使我 .