2024-06-28 20:04:49 发布
网友
我有一根绳子:
a="12cdanfaw3i8hanjwofaef56ghah398hafadsf12cds;dkh38hfasdf56ghaldkshf12cdasdiuhf93f2asdf56gh"
我试图提取12cd和{}之间的字符串。这些值将是anfaw3i8hanjwofaef,s;dkh38hfasdf,asdiuhf93f2asdf
12cd
anfaw3i8hanjwofaef
s;dkh38hfasdf
asdiuhf93f2asdf
我拥有的regex是re.findall(r'12cd.*56gh', a)。在
re.findall(r'12cd.*56gh', a)
但是模式包含在输出中。在
如何编写regex使其不包含在输出中?在
谢谢
您需要一个非贪心的regex来获得所有3个匹配项,并且还需要使用一个匹配组来不包括模式,所以使用12cd(.*?)56gh
12cd(.*?)56gh
import re print(re.findall(r'12cd(.*?)56gh', '12cdanfaw3i8hanjwofaef56ghah398hafadsf12cds;dkh38hfasdf56ghaldkshf12cdasdiuhf93f2asdf56gh'))
输出:
解释
12cd // matches 12cd ( // matching group 1 .*? // matches any character between 0 and unlimited times, lazy ) 56gh // matches 56gh
您需要一个非贪心的regex来获得所有3个匹配项,并且还需要使用一个匹配组来不包括模式,所以使用
12cd(.*?)56gh
输出:
^{pr2}$解释
相关问题 更多 >
编程相关推荐