目前我正在嘗試從RSS提要中獲取嵌入的URL。因此,最初的URL中包含特殊字符如下所示:以基於特殊字符的Android拆分字符串
http://www.facebook.com/1.php?&...http://www.example.com...&「
我使用String.split(expression)
功能拆分並獲得像http://www.example.com
但是對於特殊的表情‘’我不能?分割字符串。
是否有任何其他方式基於特殊字符分割字符串?
在此先感謝
目前我正在嘗試從RSS提要中獲取嵌入的URL。因此,最初的URL中包含特殊字符如下所示:以基於特殊字符的Android拆分字符串
http://www.facebook.com/1.php?&...http://www.example.com...&「
我使用String.split(expression)
功能拆分並獲得像http://www.example.com
但是對於特殊的表情‘’我不能?分割字符串。
是否有任何其他方式基於特殊字符分割字符串?
在此先感謝
String.split需要一個正則表達式的參數。由於?
是一個特殊字符在正則表達式,做你想做什麼,你居然把它寫成:
myStr.split("\\?");
並因此將其識別爲文字?
,而不是作爲一個特殊的正則表達式字符。
請注意,需要兩個反斜槓。正則表達式本身是"\?"
,但由於要將"\"
放入java字符串中,我們需要將它寫爲"\\"
,因此表達式字符串將變爲"\\?"
。
要了解有關正則表達式的更多信息,我建議您查看this site。
這是一個uri,符合標準的URI語義。因此,您可以使用Android中的標準Uri表示之一爲您完成繁重工作。您的Uri在?
字符之後包含一個查詢字符串,該字符串跟在Uri的主要部分之後,並由多個用&
字符分隔的鍵/值對組成。你只需要分析你的URI到ndroid.net.Uri
對象,然後調用getQueryParameter(String paramName)
獲得您所需的查詢參數:
String raw = "http://www.mydomain.com/index.html?param1=hello¶m2=world¶m3=test";
Uri uri = Uri.parse(raw);
String param = uri.getQueryParameter("param2");
這將在param
返回「世界」。