【问题标题】:Javascript Regex can't match ellipsisJavascript 正则表达式无法匹配省略号
【发布时间】:2014-02-16 21:36:52
【问题描述】:

我当前使用的正则表达式如下:

var sentences = fulltext.match(/[^\.!\?]+[\.!\?]+/g);

返回一个数组,其中包含空格的句子拆分(我需要所有字符)。问题是,它不适用于省略号“...”,我想它也不适用于其他非常规形式的标点符号。

如何修复我的正则表达式以匹配此标点符号和其他形式的标点符号?

是否有任何 noob 友好的 REGEX 示例驱动指南?

【问题讨论】:

标签: javascript regex match ellipsis


【解决方案1】:

省略号的Unicode是\u2026

所以你可以使用\u2026 来匹配省略号。

代码

var fulltext= "First sentence… Second sentence. ";
fulltext.match(/([^.?!;\u2026]+[.?!;\u2026]+)/g);

输出

["First sentence…", " Second sentence."]

DEMO and Explanation

【讨论】:

  • 感谢演示+解释。
【解决方案2】:

您可以将省略号(和任何其他标点符号)添加到您的字符集中。

var input = "First sentence… Second sentence. ";
input.match(/[^\.\?!;…]+[\.\?!;…]+/g);

结果:

["First sentence…", " Second sentence."]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-17
    • 2013-07-26
    • 2016-04-07
    • 1970-01-01
    • 2011-11-29
    • 2012-09-22
    • 1970-01-01
    相关资源
    最近更新 更多