如何将一组文本拆分成句子和/或段落?

时间:2014-06-26 22:33:26

标签: javascript jquery regex

我想分割一段文字,例如:

var str = "This is one.  Two because of space break
This is number three! 


And Four?!?!"

使用here中的str.match( /[^\.!\?]+[\.!\?]+/g )我得到以下内容3.

[ 'This is one.',
  '  Two because of space break\r\n    This is number three!',
  ' \r\n\r\n\r\n    And Four?!?!' ]

相反,由于分页符,我希望有4个不同且干净(无\ r \ n)的值。我尝试在匹配函数之前使用str.replace(/\r?\n/g,'.');并且那种工作,但我想知道是否有一种更清洁的方式可能通过组合正则表达式?

我想得到:

['This is one.', 'Two because of space break', 'This is number three!', 'And Four?!?!']

1 个答案:

答案 0 :(得分:1)

这是你想要的吗?

str.match(/[^\s.!?]+[^.!?\r\n]+[.!?]*/g);