我在不同的浏览器中获得此JavaScript代码的不同错误:
var updatedate = /(?<=\<meta\ name\=\"updated_at\"\ content\=\")([^\"]*)/;
我想要的是从某些页面的元数据中找到更新日期。它显示如下:
<meta name="updated_at" content="2018-09-17 11:42 AM">
我使用Sublime来确保它的工作原理,然后我在regex101上进行了测试以确定,但Chrome和Mozilla一直给我这个错误。
我错过了什么?
(?<=...)
lookbehind assertion最近才加入ECMAScript。它受最新版Chrome支持,但不支持Firefox。
重写正则表达式以使用普通组:
var updatedate = /(?:\<meta\ name\=\"updated_at\"\ content\=\")([^\"]*)/;
然后,您可以通过访问data.match(updatedate)[1]
来提取时间戳。