Python:删除lin上某个字符及其后的所有内容

2024-10-01 17:31:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一些这样的文字:

1.6 # blah blah blah
# fjsadfklj slkjf yes 3.4
1.8*
1.9 1.10 #blah
#blah
1.11

我想通过删除所有#字符以及同一行中跟在它们后面的任何字符来清理它。换句话说,我希望:

^{pr2}$

最好的办法是什么?通过简单的方法,比如partition,或者正则表达式?在


Tags: 方法字符yesblahpartition文字办法pr2
2条回答

你可以试试这个

re.sub(r'\s*#.*', '', s)

\s*也有助于匹配前面的垂直或水平空格字符。我所说的垂直空格是换行符,回车符。在

DEMO

也许这能满足你的要求吗?在

example = '''1.6 # blah blah blah
# fjsadfklj slkjf yes 3.4
1.8*
1.9 1.10 #blah
#blah
1.11'''

for line in example.splitlines():
    print(line.split('#', 1)[0])

如果您真的需要注释文本,代码可以很容易地修改以允许捕获。在

相关问题 更多 >

    热门问题