*で始まる特定のファイルからすべての行を削除したい。したがって、たとえば、次のようになります。
* This needs to be gone
But this line should stay
*remove
* this too
End
これを生成する必要があります:
But this line should stay
End
私が最終的に行う必要があるのは次のとおりです。
- 括弧と括弧(括弧/括弧を含む)内のすべてのテキストを削除し、
- 上記のように、''で始まる行を削除します。
これまでのところ、私は次のように#1に取り組むことができましたre.sub(r'[.?]|(.*?)', '', fileString)
。#2でいくつか試しましたが、やりたくないものは必ず削除してしまいます
解決策1(正規表現なし)
>>> f = open('path/to/file.txt', 'r')
>>> [n for n in f.readlines() if not n.startswith('*')]
解決策2(正規表現)
>>> s = re.sub(r'(?m)^\*.*\n?', '', s)
助けてくれてありがとう。