我正在尋找從URL中提取字符串。這裏是一個例子來說明我在找什麼。從URL中提取字符串的正則表達式
輸入網址:http://www.nba.com/bulls/stats/ 輸出:多頭
換句話說,我希望能夠提取的倒數第二個和最後一個「/」在URL之間的字符串。我知道我可以通過「/」來分割並提取上一個第二個術語,但是我正在尋找一個更清潔的正則表達式解決方案。
任何想法?
我正在尋找從URL中提取字符串。這裏是一個例子來說明我在找什麼。從URL中提取字符串的正則表達式
輸入網址:http://www.nba.com/bulls/stats/ 輸出:多頭
換句話說,我希望能夠提取的倒數第二個和最後一個「/」在URL之間的字符串。我知道我可以通過「/」來分割並提取上一個第二個術語,但是我正在尋找一個更清潔的正則表達式解決方案。
任何想法?
試試這個:
http://[^/]+/([^/]+)/[^/]+/?
下面的正則表達式可以做的工作
http[s]?://[\w\.]+/(\w+)/.*
我可能是指http [s]?而不是http [s] * – Max 2011-03-27 23:20:25
如果字符串中有任何特殊字符(如'-'或'%'),則不匹配。我不確定這是否相關。 – 2011-03-27 23:20:34
爲什麼不簡單地使用「https?://'? – Czechnology 2011-03-27 23:32:17
如果必須通過正則表達式做到這一點,你可以簡單地這樣做(假設JavaScript的風格正則表達式語法):
/\/([^\/]*)\/[^\/]*\/$/
爲求使它更容易理解,NET版本將是這樣的:
@"/([^/]*)/[^/]*/$"
但是,我認爲的想法拆分/
確實是這樣做的正確方法。
我不神交正則表達式和你的字符串拆分選項似乎很簡單的對我說:'頭(尾(不公開(strsplit(URL, 「/」)),2) ,1)' – Chase 2011-03-28 02:04:39
倒數第二個和最後一個之間的字符串是stats,而不是公牛。你的意思是你想要第三個倒數第二個倒數/? – 2011-03-28 03:35:44
是的。我的意思是第三倒數第二倒數 – Ramnath 2011-03-31 14:05:14