2017-02-17 76 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」); } } –