Regex 在数字中查找两位数(非/连续)

Regex 在数字中查找两位数(非/连续),regex,duplicates,digits,Regex,Duplicates,Digits,我试图编写一个正则表达式来查找数字中的两位数 我有r'(\d)\1+?'适用于110或011,但不适用于101。我遗漏了什么?在您的模式中,(\d)\1+?您正在捕获一个数字,引用与在组1中捕获的值完全相同的反向引用将直接放置在捕获组之后 这样,如果中间有其他(不相同的数字),则反向引用不能匹配相同的值 (\d)\d*\1 请注意,如果您只是想要匹配,可以省略+?,因为这样会将反向引用重复1次或更多次 您可能要做的是在中间使用\d*匹配可选数字 (\d)\d*\1 我想你的意思是(\d)\d

我试图编写一个正则表达式来查找数字中的两位数

我有r'(\d)\1+?'适用于110或011,但不适用于101。我遗漏了什么?

在您的模式中,
(\d)\1+?
您正在捕获一个数字,引用与在组1中捕获的值完全相同的反向引用将直接放置在捕获组之后

这样,如果中间有其他(不相同的数字),则反向引用不能匹配相同的值

(\d)\d*\1
请注意,如果您只是想要匹配,可以省略
+?
,因为这样会将反向引用重复1次或更多次

您可能要做的是在中间使用
\d*
匹配可选数字

(\d)\d*\1

我想你的意思是
(\d)\d*\1
请在这个问题中添加示例,以便我们进行测试RE@Thefourthbird是的,是的-成功了!!!你是个天才。谢谢你这么优雅的回答!你能解释一下语法让其他人理解吗?谢谢大家!