有一个像这样的字符串:
mystr = 'account_id 37318 not found'
我想知道如何更好地写出一个条件:
if 'account_id' not in str and 'not found' not in str:
doSomething()
我想必须有类似的东西:
if 'account_id' + %any substring% + 'not found' not in str:
doSomething()
正则表达式可能会有所帮助,但我使用它并不好。
提前谢谢。
答案 0 :(得分:4)
您可以使用all
,也不要使用内置关键字作为变量名称。
if all(i not in s for i in ('not found', 'account_id')):
示例:
>>> tr = 'account_id 37318 not found'
>>> tr1 = '2735723'
>>> all(i not in tr for i in ('not found', 'account_id'))
False
>>> all(i not in tr1 for i in ('not found', 'account_id'))
True
>>>
答案 1 :(得分:2)
这可能有所帮助。
import re
string = 'account_id 37318 not found'
match = re.search(r'\baccount_id\b.*?\bnot found\b',string)
if match:
print 'Do something'
else:
print 'Do nothing'
让我知道它是否有帮助:)。