如何在“这是我的第一句话。这是我的第二句话。”中使用JavaScript正则表达式获得“第一”和“第二”。

时间:2017-07-26 09:07:05

标签: javascript regex

如何用“这是我的第一句话。”这是我的第二句话,用javascript正则表达式获得“第一”和“第二”。

您可以在此网站上regular website

进行尝试

例如  在python "(?<=(This is)).*?(?=sentence)"中,这将有效;但我不知道如何用javascript

写这个

1 个答案:

答案 0 :(得分:0)

尝试此模式\w+(?=(\s+)?sentence)

Demo regex

  1. 积极前瞻 (?=(\s+)?sentence)
  2. 第一捕获小组(\s+)? ?量词 - 在0到1次之间匹配,尽可能多次,根据需要回馈(贪婪)
  3. \s+匹配任何空白字符(等于[\ r \ n \ t \ f \ v])
  4. +量词 - 在一次和无限次之间匹配,尽可能多次,根据需要回馈(贪婪) 句子字面匹配字符句子(不区分大小写)
  5. var a = 'This is my first sentence.This is my second sentence'
    
    console.log(a.match(/\w+(?=(\s+)?sentence)/ig))

    Updated regex 使用while循环并将值推送到数组

    var s = '</span><span>wanna-string-a</span></a></span><span>wanna-string-b</span></a></span><span>wanna-string-c</span></a>';
    
    var qualityRegex = /<span>(.*?)<\/span>/g;
    var matches;
    var qualities = [];
    
    while (matches = qualityRegex.exec(s)) {
      qualities.push(matches[1]);
    }
    
    console.log(qualities)