无法从控制台读取换行符\ n字符

时间:2012-10-29 11:46:57

标签: python regex linux

我需要使用cat从另一台Linux电脑上读取文件,如下所示

conf = other_linux.execute('cat xxx.conf')

conf将包含xxx.conf的内容

peer 1 handler PEER_1
peer 2 handler PEER_2
peer 2 handler PEER_2
*************
----------------

我编写了以下正则表达式来替换整个对等配置

re.sub('((peer\s\d\s\S+\s\S+\n)+)','</peer>',conf)

如果我直接从文件中读取conf,上面的正则表达式工作正常,但是当我使用cat命令读取它时它无法正常工作

请提供一些备用,因为它无法读取换行符

感谢。

2 个答案:

答案 0 :(得分:0)

你可以试试这个:

re.sub('((^peer\s\d\s\S+\s\S+$)+)','</peer>',conf, flags = re.MULTILINE)

答案 1 :(得分:0)

使用以下正则表达式解决问题

((peer\s\d\s\S+\s\S+\r+\n+)+)