把偶数行放在奇数行后面?Python正则表达式
我很难理解这一点,我想知道是否有人可以帮忙,这是python正则表达式搜索的输出,但我需要更改输出,但不确定如何更改 输出如下所示:把偶数行放在奇数行后面?Python正则表达式,python,regex,Python,Regex,我很难理解这一点,我想知道是否有人可以帮忙,这是python正则表达式搜索的输出,但我需要更改输出,但不确定如何更改 输出如下所示: Tony1 , 7684 dogs Garry 2 , 8473 dogs sara111 , 0 dogs 我需要它看起来像: Tony1 , 7684 dogs Garry 2 , 8473 dogs sara111 , 0 dogs 基本上把“偶数”行中的所有内容都加在奇数行的末尾 这可能吗?使用regex相当简单 查找:'\r?\n(.*(:\r?\n
Tony1
, 7684 dogs
Garry 2
, 8473 dogs
sara111
, 0 dogs
我需要它看起来像:
Tony1 , 7684 dogs
Garry 2 , 8473 dogs
sara111 , 0 dogs
基本上把“偶数”行中的所有内容都加在奇数行的末尾
这可能吗?使用regex相当简单 查找:
'\r?\n(.*(:\r?\n|\z))'
替换:
“$1”
标志:
Global
正则表达式详细信息:
\r? \n # Even linebreak
( # (1 start), Replacement
.* # All non-linebreak chars
(?:
\r? \n # Odd linebreak
| # or,
\z # End of string
)
) # (1 end)
正则表达式:\n([^\n]+(?:\n |$)
见演示
那么代码和原始数据在哪里?使用切片将行分成奇数行和偶数行(奇数行=行[1::2],偶数行=行[::2],然后使用zip将它们配对(偶数行,奇数行)
import re
x="""Tony1
, 7684 dogs
Garry 2
, 8473 dogs
sara111
, 0 dogs"""
print re.sub(r"\n([^\n]+(?:\n|$))",r" \1",x)