Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一个字符串中1+个连续字符的字符串多次出现的Python正则表达式_Python_Regex_String - Fatal编程技术网

一个字符串中1+个连续字符的字符串多次出现的Python正则表达式

一个字符串中1+个连续字符的字符串多次出现的Python正则表达式,python,regex,string,Python,Regex,String,我需要找到可变长度字符序列的起始和结束位置,这些字符在字符串中由相同的1个字母组成。 我看过这个话题,但我想它有点离题了 下面什么也没有给我,但我希望找到5个元素 import re s = 'aaaaabaaaabaaabaaba' pattern = '(a)\1+' for el in re.finditer(pattern, s): print 'str found', el.start(), el.end() 提前感谢。因为它是一个正则表达式,所以反斜杠不应该在字符串级别转义

我需要找到可变长度字符序列的起始和结束位置,这些字符在字符串中由相同的1个字母组成。 我看过这个话题,但我想它有点离题了

下面什么也没有给我,但我希望找到5个元素

import re
s = 'aaaaabaaaabaaabaaba'
pattern = '(a)\1+'
for el in re.finditer(pattern, s):
    print 'str found', el.start(), el.end()

提前感谢。

因为它是一个正则表达式,所以反斜杠不应该在字符串级别转义,而应该由正则表达式解释

您可以使用原始字符串:

import re
s = 'aaaaabaaaabaaabaaba'
pattern = r'(a)\1+'   # raw string
for el in re.finditer(pattern, s):
    print 'str found', el.start(), el.end()

. 你只能期待4个结果。否则,请将+替换为*.Wiktor Stribiżew,谢谢,特别是关于*.Wiktor Stribiżew的提示。非常感谢。标记为接受。
str found 0 5
str found 6 10
str found 11 14
str found 15 17