我試圖創建一個正則表達式,將符合下列條件:正則表達式爲多個URL
我需要它的http://myrurl.com部分完全相同,然後,爲「EN」 2字符代碼相匹配然後之後的任何事情。這是什麼投注正則表達式?
我試圖創建一個正則表達式,將符合下列條件:正則表達式爲多個URL
我需要它的http://myrurl.com部分完全相同,然後,爲「EN」 2字符代碼相匹配然後之後的任何事情。這是什麼投注正則表達式?
怎麼樣;
var m = s.match(/(http:\/\/myurl.com\/)([a-z]{2})(\/.*)/i);
if (m) {
print (m[1]);
print (m[2]);
print (m[3]);
}
>>http://myurl.com/
>>en
>>/something
嘗試這種情況:
(https?://[\w\d-]+\.[\w]+)/([\w\d-]+)/(.*)
此正則表達式可以匹配的URL
/^((http[s]?):\/\/)?([^:\/\s]+)((\/\w+)*\/)([\w\-\.]+[^#?\s]+)(.*?)?(#[\w\-]+)?$/im
示例的許多地方= https://www.google.com/dir/1/2/search.html?arg=0-a&arg1=1-b&arg3-c#hash
在比賽所得:
1: (HTTPS://) - 協議
2:(HTTPS) - 協議
3:(www.google.com) - 主機
4:(/目錄/ 1/2 /) - 路徑
5:([]) - 路徑陣列段
6:(search.html) - 文件
7:(ARG = 0-A & ARG1 = 1-b & ARG3 -c) - 查詢
8:(#hash) - 散列
如果可能,我嘗試使用另一個分隔符(例如, #),而不是正斜槓,這樣我就不必在每次在代碼和正則表達式程序之間複製正則表達式時更改這些正則表達式。 –