如何使用Python中的正则表达式将单个换行符替换为连续的换行符

问题描述 投票:0回答:2

如何使用Python中的正则表达式将单个换行符替换为连续的换行符?

输入:Hello \ n \ n \ n \ n \ n \ nWorld

输出:Hello \ nWorld

请注意,'\'和'n'之间有一个空格。

python regex
2个回答
1
投票

根据OP的评论,输入没有\n\ n

>>> s=r'Hello \ n \ n \ n \ n \ n \ nWorld'
>>> print(s)
Hello \ n \ n \ n \ n \ n \ nWorld
>>> re.sub(r'( \\ n)+', r'\1', s)
'Hello \\ nWorld'
>>> print(re.sub(r'( \\ n)+', r'\1', s))
Hello \ nWorld
  • ( \\ n)将匹配一个空格,然后是\,然后是空格,然后是字符n
  • 然后,+量词将匹配该序列的所有连续匹配

1
投票

没有正则表达式就可以做到:

Code

data = "Hello\n\n\n\n\nWorld"
output = '\n'.join(line for line in data.split() if line)
print(output)

Results

Hello
World
© www.soinside.com 2019 - 2024. All rights reserved.