我试图查找被星号和管道包围的字符串,例如:*|FOO|*
,*|BAAAAAR|*
我已经研究了其他几个答案,但每次我将星号与管道相结合时,它都不起作用。任何人都可以帮助我吗?
我需要在同一文本中找到所有可能性,例如:
Hello *|FOO|*, let's play with *|BAAAAAR|*
我需要找到'*|FOO|*'
和'*|BAAAAAR|*'
。
答案 0 :(得分:2)
使用re.findall
。由于*
和|
是正则表达式中的特殊字符,因此您必须按顺序对其进行转义,以匹配文字*
,|
个字符。
>>> s = "Hello *|FOO|*, let's play with *|BAAAAAR|*"
>>> re.findall(r'\*\|.*?\|\*', s)
['*|FOO|*', '*|BAAAAAR|*']