我正在处理来自 Common Crawl(WET
格式)的文本,据我所见,有很多损坏的标点符号 - 很可能是在从原始数据中删除换行符时造成的。
例如,在 中This Massive Rally?The 52
,问号和The
应该用空格隔开。我尝试使用以下正则表达式(在 Java 中)解决此问题:
line.replaceAll("([.;:,!?)])([A-Z])", "$1 $2");
虽然它可以正确处理大多数情况,但它会在不应该的地方添加空格,例如U.S.
becomeU. S.
或www.HiringJobTweets.com
become www. HiringJobTweets.com
。
有没有办法在避免不良副作用的同时解决问题?