繁体   English   中英

Java:从URL获取整数值

[英]Java: Get integer value from URL

嗨,我正在尝试从URL中获取一个字符串。

我正在使用正则表达式。

String url = "http://localhost/htc/android/htc-incredible/259164-gpid";
Pattern regex = Pattern.compile("^.+/(\\d+)-gpid$"); 
Matcher tagmatch = regex.matcher( url );
System.out.println(tagmatch.group(0));

错误:

Exception in thread "main" java.lang.IllegalStateException: No match found

我做错了什么:

您需要使用group(1) (第一个捕获组的内容),而不是group(0) (整个匹配项)。

哦,当然,您需要实际进行搜索:

tagmatch.find();
System.out.println(tagmatch.group(1));

您可以尝试以下方法:

String url = "http://localhost/htc/android/htc-incredible/259164-gpid";
url.substring(url.indexOf('/',url.indexOf("htc-incredible/"))+1,url.indexOf("-gpid"));

另外,您可以结合使用lastIndexOfsplit来获取所需的部分网址。 代码将如下所示

url.substring(url.lastIndexOf('/')+1).split("-")[0] //prints 259164

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM