【发布时间】:2017-07-24 17:49:28
【问题描述】:
我有一些文本文件是其他软件的输出。我有一个用胶带固定在一起的 Perl 脚本,它可以连续使用近 100 个正则表达式来清理这些脚本。
我是 Python 新手,想知道是否有比其中一大块更惯用的方法来处理这个问题,这比 perl 构造要重得多:string =~ s/blah/blah/i;
string = re.sub(r' +', " ", string, re.I)
string = re.sub(r'(\w)- ', "\1, ", string, re.I)
string = re.sub(r'u-s', "U.S.", string, re.I)
例如某种带有正则表达式及其替换的字典?我也很好奇一个模块的函数连续调用这么多次会影响性能吗?
【问题讨论】:
-
不需要
dict,但两个tuples 中的list是有意义的。 -
你如何运行这么多正则表达式而不发生重叠?
-
源文件是一个提词器脚本,因此许多提词器软件的唯一格式代码被删除,以及示例中的常见问题,即使用连字符而不是逗号来表示暂停.该文件正在转换为纯文本以供人类阅读。