jquery matching exact string from URL self.location.href
我正在使用以下行匹配此URL-www.sitename.com/join
1 | if(/join/.test(self.location.href)) {joinPopUp();} |
关键是它也将匹配/blahjoinblah。
我怎样才能更改这个,使它只匹配"join"这个词。
注意:我认为它必须匹配"/join",因为"/"仍然存在(我认为)。
谢谢你
要了解更多关于正则表达式的信息,请阅读这些重要的参考资料。
但更具体地说,如果您真的希望它只匹配没有查询字符串变量或其他输入的
1 2 3 4 5 6 7 8 9 10 | function testUrl(url) { if(/\/join\/?$/.test(url)) { console.log(url,"matched /join"); } } testUrl(self.location.href); testUrl("https://test.com/join"); testUrl("https://test.com/foo/join"); testUrl("http://test.com/blahjoinblah"); |
所以你可能想切换你正在匹配的内容-可能看看
正则表达式
控制台内的快速测试:
1 2 3 4 5 6 7 8 9 10 11 | ["/xxjoin","/join/","/joinme","joinme"]. forEach(function (value) { console.log(value.match(/\/join(?=\/)/)); }); // returns the following: null ["/join", index: 0, input:"/join/"] null null |
或者为了可读性,
1 2 3 4 5 6 | ["/xxjoin","/join/","/joinme","joinme"]. filter(function(v) { return v.match(/\/join(?=\/)/) != null; }); // returns ['/join/'] |