我遇到正则表达式问题,在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()
获得的示例文本。
答案 0 :(得分: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));
}
答案 1 :(得分:0)
您需要设置global标志。因此,以下代码应该可以工作:
function parse() {
var regExp = /mobileheading=\"End\sDate\"\>[^\<]+\<\/div\>/g;
var html = get_html();
Logger.log(html.match(regExp));
}