我有一个网址,其中有一个ID(如订单ID,产品ID等)在webview中。如何获取这些ID并将它们放入字符串? 比如说,网址是
www.xyz.com/buy/thankyou/handlers/display.html?ie=UTF8&asins=B00F0G8K&orderId=404-35644-70307&purchaseId=404-2849-9658
我需要&asins
,&orderid
,&purchase_id
的值,并将其传递给另一个网址。我该怎么取他们?
所有这些都发生在webview中。
答案 0 :(得分:2)
从WebView
获取网址,将其解析为Uri
并从中获取各个查询参数。
示例:强>
Uri uri=Uri.parse(myWebView.getUrl());
String orderId = uri.getQueryParameter("orderid");
答案 1 :(得分:0)
刚刚看到@rax的答案,可能会更好。
尝试这样的事情:
String regex = "asins=(.*)&orderId=(.*)&purchaseId=(.*)";
String myString = "www.xyz.com/buy/thankyou/handlers/display.html?ie=UTF8&asins=B00F0G8K&orderId=404-35644-70307&purchaseId=404-2849-9658 ";
//use String myString = webView.getUrl(); in your case;
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(myString);
while (matcher.find()) {
System.out.println(matcher.group().replaceAll(regex, "$1"));
System.out.println(matcher.group().replaceAll(regex, "$2"));
System.out.println(matcher.group().replaceAll(regex, "$3"));
}
输出:
B00F0G8K
404-35644-70307
404-2849-9658
希望这会有所帮助,如果您有任何疑问,请发表评论。