正则表达式+ Python - 删除所有以*开头的行

Eve*_*iar 1 python regex

我想删除给定文件中以*开头的所有行.例如,以下内容:

* This needs to be gone
But this line should stay
*remove 
* this too
End
Run Code Online (Sandbox Code Playgroud)

应该生成这个:

But this line should stay
End
Run Code Online (Sandbox Code Playgroud)

我最终需要做的是以下内容:

  1. 删除括号和括号内的所有文本(包括括号/括号),
  2. 如上所述,删除以''开头的行.

到目前为止,我能够通过以下方式解决#1问题:re.sub(r'[.?]|(.*?)', '', fileString).我为#2尝试了几件事,但总是最终删除我不想要的东西


解决方案1(没有正则表达式)

>>> f = open('path/to/file.txt', 'r')
>>> [n for n in f.readlines() if not n.startswith('*')]
Run Code Online (Sandbox Code Playgroud)

解决方案2(正则表达式)

>>> s = re.sub(r'(?m)^\*.*\n?', '', s)
Run Code Online (Sandbox Code Playgroud)

谢谢大家的帮助.

Ωme*_*ega 5

使用正则表达式>>

s = re.sub(r'(?m)^\*.*\n?', '', s) 
Run Code Online (Sandbox Code Playgroud)

查看此演示.