使用Javascript RegExp,我尝试匹配以下网址:
http://sub.domain.com/
http://sub1.domain.com/
http://sub100.domain.com/
我尝试了以下正则表达式,它不起作用 - 不确定我做错了什么?
^http\:\/\/sub\d*\.domain\.com\/$
编辑:固定副本&粘贴错误
更新:出于某种原因,document.location.href
与正则表达式不匹配 - 即使下面的示例(也在regex101.com上)确实按预期工作。我现在的解决方法 - 我只匹配任何子域。
..非常感谢任何帮助!
答案 0 :(得分:1)
我不明白你如何比较葡萄和芒果
这是更正后的正则表达式:
/^http\:\/\/subs\d*\.app\.clicktale\.com\/$/.test("http://subs14.app.clicktale.com/");
立即在您的控制台中运行此命令。
如果您使用search
,那么您将获得0
,因为您的匹配索引为0
答案 1 :(得分:0)
你展示的子域名有“sub”,但你的REGEX正在寻找“subs”。
此外,无需逃避冒号。
您没有说您是想测试匹配还是实际捕获子域。我会假设后者:
var match = "http://foo.bar.com".match(/https?:\/\/(([^.]+)\.)?/);
alert(match[2]); //"foo"