使用及;或运算符一起在python中进行搜索?
有没有一种方法可以在python中的re.search中同时使用AND和OR运算符使用及;或运算符一起在python中进行搜索?,python,if-statement,Python,If Statement,有没有一种方法可以在python中的re.search中同时使用AND和OR运算符 if re.search(r'xyz|abc', line) != None: 这里我使用了OR运算符,但我的要求是获取包含('xyz'或'abc')和'pqr'的行。如何做到这一点?这项功能: >>> import re >>> re.search( r'(xyz|abc)pqr', 'abcpqr' ) <_sre.SRE_Match object at 0x7fa
if re.search(r'xyz|abc', line) != None:
这里我使用了OR运算符,但我的要求是获取包含('xyz'
或'abc'
)和'pqr'
的行。如何做到这一点?这项功能:
>>> import re
>>> re.search( r'(xyz|abc)pqr', 'abcpqr' )
<_sre.SRE_Match object at 0x7fa3055bdeb0>
>>> re.search( r'(xyz|abc)pqr', 'abcpq' )
>>>
>>重新导入
>>>检索(r'(xyz | abc)pqr',“abcpqr')
>>>检索(r’(xyz | abc)pqr’,“abcpq”)
>>>
试试这个:
re.search(r'((xyz|abc).*pqr)|(pqr.*(xyz|abc))', line)
忽略可以使用的字符串的顺序
if re.search(r'(?=.*[pqr])(?=.*[xyz|abc])', line):
print('match')
line = 'xyzpqr' # match
line = 'pqrxyz' # match
@Guy也不会与hello world一起工作,那又怎样?需求包含('xyz'或'abc')和'pqr'<代码>'pqrabc'应该通过。@Guy是的,按照特定的顺序。你提出的任何建议都不符合规程