【发布时间】:2013-05-21 15:57:27
【问题描述】:
给定一个段落,我想把它分成几个句子。目前我只是这样做:
var sentences = paragraph.split('.');
它在大多数情况下都有效,但是当它给出这样的句子时开始失败:
阿拉斯加是美国最大的州
因为U.S. 有句点,所以将S 解析为一个句子。
确定段落中句子的最佳方法是什么?我考虑过根据大写字母之前的最后一个句点来解析它们,但是如果该段落的键入不正确(句点后的小写字母),它也会失败
【问题讨论】:
-
我错了还是你对 JavaScript 的兴趣不如对句子检测理论的兴趣?那么这可能更像是programmers.stackexchange.com的问题
-
啊,欢迎来到正则表达式问题。也就是说,为什么不:
split('.\s+')? (虽然我第二个dystroy的建议,正则表达式解析语言/语法很尴尬)。 -
不要忘记句子可以以点以外的东西结尾!
-
如果你想让这个算法准确,你要求的是非常复杂的东西。
-
@DavidThomas:J. R. “Bob” Dobbs 想卖给你一些东西。?
\s+不太合适。
标签: javascript text-segmentation