正则表达式捕获最后 4 个相同的数字
Regex capture last 4 same number
我有这样的 phone 号码:0988523333
此正则表达式匹配:
/(\d){3}$/
但它也匹配这些数字,例如:2961533333 或 1872333333
如何编写仅匹配第一个数字 (0988523333) 的模式?
您可以使用 2 个反向引用:
(^|\d)((?!)\d){3}$
这将确保我们在末尾匹配精确的 4 个数字重复实例。
正则表达式分解:
(^|\d) # matches a digit or line start and captures it as group #1
((?!)\d) # matches next digit if it is not same as group #1 and captures it as group #2
{3} # matches 3 instances of group #2
我有这样的 phone 号码:0988523333
此正则表达式匹配:
/(\d){3}$/
但它也匹配这些数字,例如:2961533333 或 1872333333
如何编写仅匹配第一个数字 (0988523333) 的模式?
您可以使用 2 个反向引用:
(^|\d)((?!)\d){3}$
这将确保我们在末尾匹配精确的 4 个数字重复实例。
正则表达式分解:
(^|\d) # matches a digit or line start and captures it as group #1
((?!)\d) # matches next digit if it is not same as group #1 and captures it as group #2
{3} # matches 3 instances of group #2