2011-04-06 146 views

回答

2

試試玩RegExr。它有很多好的信息,當你完成後,會在頁面底部給你一個javascript正則表達式。

試試這個:

var url = // your url 
url.match(/http://[a-zA-Z_0-9]+\.foo\.com/bar/$/g) 

$一個字符串的結尾相匹配。在最後的$將確保它後面沒有文字。

+1

替換'XYZ [A-ZA-Z0-9_]' – 2011-04-06 14:11:33

0

你可以提供一些細節嗎?

E,G,/^http://[a-zA-Z]+.foo.com/bar/$/g

會做你要找什麼,如果它是一個單一的線(通過^ $分隔符)。它將匹配xyz,但不包含xyz1,如果你想包含數字,這很容易修復。

圍繞它玩,讓我知道你是否有更多的問題。

+0

你需要逃避你的月經 – babsher 2011-04-06 14:14:25

+0

不知它工作在Regexr,沒有逃脫:) – Mrchief 2011-04-11 20:04:08

+0

亞,但它也將匹配像'HTTP的東西:// xyzdfoobcom /酒吧/' – babsher 2011-04-20 14:43:58

0

您可以指定一些location對象的屬性,以自己的一次頁面加載變量(自location是免費爲後來改變):

var hostURL = location.host; //should be '*.foo.com' 
var pathURL = location.pathname; //should be '/bar' 

然後創建一個RegExp對象:

var regex = '.*\.foo\.com/bar/$'; 
var testURL = new RegExp(regex); 

並測試網址:

if (testURL(hostURL + pathURL)) { 
    //do something 
} 
0

這個正則表達式應該爲你做。

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov)\b 

將以上分配給變量。並且測試這個模式是否與使用javascript的test()方法選擇的url匹配。如有需要,請更新以滿足您的需求。