正则表达式 "(\d)(?=\d) " 和 "(\d)(?=\d )" 之间的区别?

问题描述 投票:0回答:1

我在正则表达式中遇到了反向引用概念,并正在尝试这些概念。但是我无法理解这两个正则表达式之间的区别。假设我的数据字符串为

5152249435

"(\d)(?=\d)\1"
匹配 5152249435,但
"(\d)(?=\d\1)"
5152249435 匹配。

一个数字后跟另一个数字,然后是第一个捕获组。两者不是同一个意思吗。或者我错过了什么?

python regex regex-lookarounds regex-group regex-greedy
1个回答
0
投票

在第一个模式中,它是任意数字。 在第二个模式中,它必须与第一个捕获组中捕获的数字相同。

© www.soinside.com 2019 - 2024. All rights reserved.