我正在使用的当前REGEX如下:
var sentences = fulltext.match(/[^\.!\?]+[\.!\?]+/g);
返回一个包含句子的数组包含空格(我需要所有的字符)。问题是,它不适用省略号“......”,我猜它也不适用于其他非传统形式的标点符号。
如何修复我的REGEX以匹配此标点和其他形式的标点符号?
那里有REGEX的 noob 友好示例驱动指南吗?
答案 0 :(得分:3)
您可以将省略号(以及任何其他标点字符)添加到字符集中。
var input = "First sentence… Second sentence. ";
input.match(/[^\.\?!;…]+[\.\?!;…]+/g);
结果:
["First sentence…", " Second sentence."]
答案 1 :(得分:1)
省略号的Unicode为\u2026
。
因此,您可以使用\u2026
来匹配省略号。
代码:
var fulltext= "First sentence… Second sentence. ";
fulltext.match(/([^.?!;\u2026]+[.?!;\u2026]+)/g);
<强>输出强>
["First sentence…", " Second sentence."]
<强> DEMO and Explanation 强>