【发布时间】:2021-12-18 00:36:59
【问题描述】:
从此page,(What is a good regular expression to match a URL?)
我们可以使用正则表达式来匹配很多 URL,(它在正则表达式网站中用作测试。不知何故,它在 GAS(Google App Script)中不起作用,因为它被用作
var rx = 'https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&\/\/=]*)';
regex= string.match(rx)
Logger.log(regex)
它总是返回 null
Info null
但是,此正则表达式在此页面 https://regexr.com 上有效。我们如何让它与 GAS 一起使用?
我们如何在 GAS 中匹配这样的东西?
https://notifications.example.com/f/g/FB-FnExAZJUxP7fPZCGR4kW9FodXg0X1GBR4wZ0GUaAV0DgL3xUT1K2gBsxnQVcGbzPcydEWIwOgDQ-GiVzMERg5FPGm1Ek6YWnAyElHsz5uqJe5wYYtgQbGuQmW5WxF6E8bu9CfRtBEJ7AWDxWSwfOu__Ahwrwsnw
【问题讨论】:
-
或许应该是
var rx = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&\/\/=]*)/; -
在此页面上查看答案:stackoverflow.com/questions/3809401/…
-
并非如此。它只返回两个 URL。虽然它应该匹配很多。你能帮我匹配这个网址吗? notifications.example.com/f/g/…
-
也许你需要
/g中的g标志 -
阅读我给你的链接。我怀疑他们比我更了解它。