首页 文章

Google Apps脚本中的正则表达式

提问于
浏览
2

我正常使用正则表达式,在RegExr.com和JS Console上运行正常 . 但Google Apps脚本失败了 .

regex.gs

function parse()
{
  var regExp = /mobileheading=\"End\sDate\"\>[^\<]+\<\/div\>/

  var html = get_html();  
  Logger.log(html.match(regExp));

}

RegExr链接 - http://regexr.com/3fcsg

上面的链接具有从 get_html() 获得的示例文本 .

2 回答

  • 4

    你的正则表达式很好看 . 请记住在正则表达式中添加“g”标志以捕获所有匹配项 . 这可能是get_html()方法本身的问题 .

    function parse() {
      var regExp = /mobileheading=\"End\sDate\"\>[^\<]+\<\/div\>/g
      var html = HtmlService.createHtmlOutputFromFile("page.html").getContent();
      Logger.log(html.match(regExp));  
    }
    
  • 0

    您需要设置global标志 . 因此,以下代码应该工作:

    function parse() {
        var regExp = /mobileheading=\"End\sDate\"\>[^\<]+\<\/div\>/g;
        var html = get_html();
        Logger.log(html.match(regExp));
    }
    

相关问题