2017-07-05 38 views
0

假设我有一个这样的字符串123456789。有没有办法找到从给定字符串这样如何在正则表达式中查找重叠模式?

123423453456456756786789使用regex

我这样做,但不能找出解决方案的每一个可能的现有格局:

import re 
regex = r"[1-9]{4}" 
test_string = "123456789" 
print(re.findall(regex, test_str)) 

这个输出:

['1234', '5678'] 

任何帮助将意味着很多,我,谢谢

回答

2

你可以试试这个正则表达式:

\d(?=(\d{3})) 

Regex Demo

样品来源(Run here

import re 
regex = r"\d(?=(\d{3}))" 
test_str = "123456789" 
matches = re.finditer(regex, test_str) 

for match in matches: 
print(match.group()+match.group(1));