我正在创建一个Jupyter笔记本来清理大量具有正则代码的小说,我正在Sublime中测试。我的许多文本都包含‘由谷歌数字化’这一短语,因为我就是从那里得到的PDF,我就是从那里通过光学字符识别运行的。我想删除所有包含短语“数字化”的句子,或者更确切地说是“数字化”,因为第一部分并不总是被正确转录。
当我在Sublimes 'replace function‘中使用这句话时,我得到了我想要的结果:
^.*igitized.*$
然而,当我试图在我的Jupyter笔记本中使用re.sub方法时,它从其他一些短语开始工作,“由谷歌数字化”行不能正确识别,并被“无”所取代。
text = re.sub(r'^.*igitized.*$', '', text)
我遗漏了什么?
发布于 2019-04-19 03:30:55
默认情况下,'^‘只匹配字符串的开头,'$’只匹配字符串末尾和字符串末尾的换行符(如果有)之前。添加re.MULTILINE标志以匹配行首。
text = re.sub(r'^.*igitized.*$', '', text, flags=re.MULTILINE)
https://stackoverflow.com/questions/55752440
复制相似问题