2
我想提取一個URL的路徑的第一部分。例如:從http://foo.com/bar/1/2/3
我想提取bar
。這裏是我使用的代碼:Java正則表達式:如何匹配URL路徑?
private static String getFirstPartOfPath(String url)
{
Pattern pattern = Pattern.compile("^https?://[^/]+/([^/]+)/*$");
Matcher matcher = pattern.matcher(url);
if(matcher.find())
{
System.out.println(matcher.group(1));
}
return null;
}
然而,這不符合上面列出的最微不足道的網址,如
public static void main(String[] args)
{
getFirstPartOfPath("http://foo.com/bar/1/2/3");
}
打印什麼。乍一看,模式字符串看起來很清晰,並且顯然它應該可以工作。出了什麼問題?
明白了,謝謝。我會在9分鐘後讓我接受。 –
不客氣,很高興它解決了。 – anubhava