所有人
我对Python还比较陌生,但是已经在REGEX中广泛地使用了其他脚本语言。我需要一个脚本,将打开一个文件,寻找一个正则表达式模式,替换模式和关闭文件。我发现下面的脚本很好用,但是,我不知道“for line”是否在文件输入.input命令可以适应超过单行的正则表达式模式(即正则表达式包含回车符)。在我的例子中,它包括两行。我的测试文件已读取_信息技术.txt看起来像这样
阅读_信息技术.txt(仅包含3行) 阿坝 疾病预防控制中心 EFE公司
此脚本用于打开文件,识别超过2行的模式ABA\nCDC,然后将其替换为单词TEST。在
如果pattern replace成功,那么文件应该如下所示,现在只包含2行: 试验 EFE公司
了解这个问题的答案对于使用Python脚本解析文本文件并动态修改它们有很大帮助。我相信,但不确定是否有更好的Python结构仍然允许REGEX搜索。所以问题是:
1)我是否需要更改现有脚本中的某些内容来更改“for line”命令的行为以匹配多行REGEX模式? 2) 或者我需要一个更适合多行搜索的不同Python脚本吗?在
一些可能有帮助但我目前不知道如何写的东西是:
1)fileinput“readline”选项。 2) 加法(?)?m) 在multline的表达式中
请帮忙!在
布伦特
import sys
import fileinput
import re
for line in fileinput.input('C:\\Python34\\read_it.txt', inplace=1):
line = re.sub(r'A(B)A$\nCDC', r'TEST', line.rstrip())
print(line)
您可以通过在}作为参数来实现这一点
re.sub
中添加re.M
或{在示例:-在
或者
^{pr2}$相关问题 更多 >
编程相关推荐