我想解析一个基本上是URL的字符串.我需要检查一下参数是否传递给它.
所以http:// abc /?param = 1将返回true http:// abc /?no = 1将返回false并且http:// abc /?a = 1&b = 2 .....¶m = 2将返回因为param已设置,所以为true
我猜它会涉及某种正则表达式.
Java有一个用于处理URL的内置库:此处为URL的规范.
您可以从字符串创建URL对象并提取查询部分:
URL url = new URL(myString);
String query = url.getQuery();
Run Code Online (Sandbox Code Playgroud)
然后制作键和值的映射:
Map params<string, string> = new HashMap<string, string>();
String[] strParams = query.split("&");
for (String param : strParams)
{
String name = param.split("=")[0];
String value = param.split("=")[1];
params.put(name, value);
}
Run Code Online (Sandbox Code Playgroud)
然后检查你想要的参数 params.containsKey(key);
可能有一个图书馆可以为你做这一切,所以先来看看.