2024-10-08 19:30:48 发布
网友
mystring="q1)whatq2)whenq3)where"
"q1)whatq2)whenq3)where"
想要["q1)what", "q2)when", "q3)where"]
["q1)what", "q2)when", "q3)where"]
我的方法是找到q\d+\)模式,然后移动,直到再次找到该模式并停止。但我停不下来。你知道吗
q\d+\)
我做了req_list = re.compile("q\d+\)[*]\q\d+\)").split(mystring)
req_list = re.compile("q\d+\)[*]\q\d+\)").split(mystring)
但这给了整个弦。 我该怎么做?你知道吗
您可以尝试使用re.findall函数的以下代码
re.findall
>>> import re >>> s = "q1)whatq2)whenq3)where" >>> m = re.findall(r'q\d+\)(?:(?!q\d+).)*', s) >>> m ['q1)what', 'q2)when', 'q3)where']
说明:
q
)
(?:(?!q\d+).)*
q\d+
您可以尝试使用
re.findall
函数的以下代码说明:
q\d+\)
匹配格式为q
的字符串,后跟一个或多个数字,再后跟)
符号。你知道吗(?:(?!q\d+).)*
与任何不在q\d+
零次或多次的字符匹配的负向前看。你知道吗相关问题 更多 >
编程相关推荐