2017-02-17 66 views
-1

我想搜索URL中的特定字符串,如果找到值,我希望脚本返回页面类型。JS |正则表达式匹配网址和返回值基于匹配

我使用了一个简单的indexOf,但它不允许RegEx &我似乎无法使这个脚本使用匹配工作。我的新手&任何帮助表示赞赏! :)

if ((window.location.href.indexOf("/czech-job-server/") > -1) || (window.location.href.indexOf("/prague/czech/") > -1)) { 
    return("Detail"); 
} 

else if (window.location.href.indexOf("jobs") > -1) { 
    return("Category"); 
} 

else { 
    return("Page Not Defined"); 
} 
+0

,你可以把一个例子字符串输入和输出我们呢? – tfidelis

+0

您可以添加更多的细节 - 如果您尝试使用'.match()',您是如何使用它以及发生了什么,您能显示该代码吗?另请参阅http://stackoverflow.com/questions/6603015/check-whether-a-string-matches-a-regex例如 –

+0

是的,我试过match()而不是indexOf - > window.location.href.match(job-server/g)> -1 不幸的是,我通过Google跟踪代码管理器触发了该脚本,因此我没有任何其他代码可以向您显示。它只是返回“未定义”。 –

回答

0

很好,我没有看到使用正则表达式的模式,所以只是把这个词的正则表达式,并调用匹配。 Match method收益匹配的当前字符串数组:

​​
+0

唷,它终于工作了。我刚刚对代码进行了一些更改。谢谢 :-)。 ---- 函数(){ 如果((window.location.href.match(/捷克在职服务器/克)。长度> 0)||(hrefString.match(/布拉格\/czech/g).length> 0)){ return(“Detail”); } else if(window.location.href.match(/ jobs/g).length> 0){ return(“Category”); } else { return(“Page Not Defined”); } } –