Skip to main content
 首页 » 编程设计

Python删除所有以特定单词开头的行

2025年05月04日8zhujiabin

假设我有一个包含以下内容的字符串:

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