嗨我使用正则表达式并不好。 所以我有一个问题。
我想按特定标记拆分文字。
令牌列表将是“。”,“?”。
此外,我想在拆分文本中排除特定单词。
具体的单词列表将是'先生'。
(前)史密斯先生买了这个。我也是。 - > [“史密斯先生买了这个。”,“我也是。”]我想使用(javascript)正则表达式来分割此文本。
我该怎么办?
答案 0 :(得分:0)
以下是与您提供的固定约束相匹配的简单正则表达式。但是,我怀疑它最终可能不是那么可用,特别是如果你打算使用动态拆分/忽略列表(这意味着正在动态构建正则表达式模式)。无论如何,我希望模式本身对你来说是一个很好的体验。
var example = "Mr. Smith bought this. and me too.";
var regexp = /((Mr\.)|[^.?]+?)*[.?]/gi;
var result = [];
var captures;
while((captures = regexp.exec(example)) != null) {
result.push(captures[0]); // trim?
}
console.log(result);