我在这里尝试过以前的答案.我只能找到几个子集.
这是我正在处理的代码和示例.
s = "{| mySting0 |} The {| mySting1 |} The {| mySting2 |} The {| mySting3 |} make it work "
result = re.findall('{\|(.*)|}', s)
Run Code Online (Sandbox Code Playgroud)
输出是,
[' mySting0 |} The {| mySting1 |} The {| mySting2 |} The {| mySting3 |} make it work ']
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
你可以使用这个正则表达式:
>>> s = "{| mySting0 |} The {| mySting1 |} The {| mySting2 |} The {| mySting3 |} make it work "
>>> re.findall(r'{\|(.*?)\|}', s)
[' mySting0 ', ' mySting1 ', ' mySting2 ', ' mySting3 ']
Run Code Online (Sandbox Code Playgroud)
变化是:
.*?而不是贪心.*|在你的正则表达式中脱颖而出