我有一个字符串,它是一本书的片段(大约 1 章),这个字符串都是一行。我想在每个句子的末尾换行
我通过一个不那么复杂的代码解决了它
text = text.replaceAll("\\.","\\.\n"); //same for ? same for !
当然,这不会产生非常好的结果。我不需要它是完美的,但我越能做到越好。
在制作换行符之前,我至少想检查以下内容:
the word before the . is longer then 2 characters
there are no dots before the . in the same "word"
the character before the . is not a number
the character after the dot (and possibly a whitespace after that dot) is not a (
任何其他建议以及将实现它的实际代码都将不胜感激。
类似问题: 这里
更新:
虽然在我的优先级列表中并不高,因为我的书不包含很多直接引用或直接演讲,但是处理其中的句子的规则也是有序的,这样来自同一个 qoute 的句子就不会出现在新行中