首先 – 我的代码有效.它只是运行缓慢,我想知道我是否遗漏了一些能让它变得更有效率的东西.我正在使用python解析PDF(是的,我知道如果可能的话应该避免这种情况).
我的问题是我必须做几个相当复杂的正则表达式替换 – 当我说替换时,我的意思是删除.我已经做了那些首先删除最多数据的那些,以便下一个表达式不需要分析太多的文本,但这是我能想到的所有加速的东西.
我对python和正则表达式都很陌生,所以可以想象这可以做得更好.
谢谢阅读.
regexPagePattern = r"(Wk)\d{1,2}.\d{2}(\d\.\d{1,2})"
regexCleanPattern = r"(\(continued\))?((II)\d\.\d{1,2}|\d\.\d{1,2}(II)|\d\.\d{1,2})"
regexStartPattern = r".*(II)(\s)?(INDEX OF CHARTS AFFECTED)"
regexEndPattern = r"(II.)\d{1,5}\((P|T)\).*"
contentRaw = re.sub(regexStartPattern,"",contentRaw)
contentRaw = re.sub(regexEndPattern,"",contentRaw)
contentRaw = re.sub(regexPagePattern,"",contentRaw)
contentRaw = re.sub(regexCleanPattern,"",contentRaw)
解决方法:
我不确定你是否在循环内执行此操作.如果不是,则不适用以下内容.
如果多次使用模式,则应使用re.compile(…)进行编译.