我需要一个正则表达式来识别句子开始时前一个句点后没有空格的所有情况。
例如,这是一个错误的句子:
I'm sentence one.This is sentence two.
这需要修复如下:
I'm sentence one. This is sentence two.
这不仅仅是对“.”进行字符串替换的情况。和 '。 ' 因为在很多情况下,段落中的其余句子都有正确的间距,这会给那些额外的空间。
最佳答案
\.(?!\s)
将匹配后面没有空格的点。不过,您可能还需要感叹号和问号:[\.\!\?](?!\s)
编辑:
如果 C# 支持,试试这个:[\.\!\?](?!\s|$)
。它不会匹配字符串末尾的标点符号。
关于c# - 正则表达式需要识别句子之间没有空格的地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4410143/