![](/img/trans.png)
[英]Python - Remove all the lines starting with word/string present in a list
[英]Python Remove all Lines starting with specific word
假設我有一個包含以下內容的字符串:
ASFksdfasf a
Oh sadfafas
Yeasd: asdfaf
Oh asdfaf
我想從以“ Oh”開頭的字符串中刪除行。 我將如何處理? 現在我知道我可以在正則表達式中執行以下操作:
\b[Oh]\S*
但是我不確定如何將結果存儲到變量中,即使那樣,我相信它只能找到單詞,而不是刪除單詞。
我用您要用來執行此操作的表達式對OP進行了評論,但建議使用@AvinashRaj的答案(非正則表達式)。 您詢問如何實現,而re.sub()
是答案!
演示:
string = '''ASFksdfasf a
Oh sadfafas
Yeasd: asdfaf
Oh asdfaf'''
import re
print re.sub(r'^Oh.*\n?', '', string, flags=re.MULTILINE)
輸出:
ASFksdfasf a
Yeasd: asdfaf
使用string.startswith
函數。
if not string.startswith('Oh'):
例:
>>> s = '''ASFksdfasf a
Oh sadfafas
Yeasd: asdfaf
Oh asdfaf'''
>>> for line in s.splitlines():
if not line.startswith('Oh'):
print(line)
ASFksdfasf a
Yeasd: asdfaf
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.