句子的正则表达式

时间:2018-11-08 20:17:34

标签: php regex preg-split

当圆点后有空格时,我的正则表达式效果很好。

$str = 'Fry me a Beaver. Fry me a Beaver! Fry me a Beaver? Fry me Beaver no. 4?! Fry me many Beavers... End';

$sentences = preg_split('/(?<=[.?!])\s+(?=[a-z])/i', $str);

但是当点后有\n时,我还需要它也能正常工作。

$str = 'Fry me a Beaver. Fry me a Beaver!\nFry me a Beaver? Fry me Beaver no. 4?! Fry me many Beavers... End';

我不能在常规中添加\n

1 个答案:

答案 0 :(得分:-1)

您只需添加一个\\n,并使用OR(\s)链接到您的|
/(?<=[.?!])\s+|\\n+(?=[a-z])/i

可以在 here 上看到它。