我試圖以某種方式搜索多個字符串並在找到某個字符串時執行特定操作。 是否可以提供一個字符串列表並通過文件搜索該列表中存在的字符串的任何?通過使用字符串列表在文件中搜索多個字符串
list_of_strings_to_search_for = ['string_1', 'string_2', 'string_3']
目前,我正在做一個接一個,表示每個字符串我想在新的if-elif的-else語句來搜索,例如:
with open(logPath) as file:
for line in file:
if 'string_1' in line:
#do_something_1
elif 'string_2' in line:
#do_something_2
elif 'string_3' in line:
#do_something_3
else:
return True
我曾嘗試傳遞列表本身,但是,「if x in line」期望單個字符串,而不是列表。什麼是這樣的事情的有價值的解決方案?
謝謝。
你是不是想匹配的話,如 「你好」 和 「世界」 都在 「Hello World」 的發現,但「o」沒有找到,或者「o」會被找到兩次,因爲你想要簡單的子串匹配? –
@JohnZwinck嘿約翰,我正在尋找的字符串(例如,string_1)在我的日誌文件中是顯式的,所以它對我來說並不重要。我將搜索只能找到一次的字符串。 –