<img src='http://res.cloudinary.com/test/image/upload/v1/testFolder/1024x1024.jpg'/>
我想获取'
和'
之间的网址。这是我尝试过的,它使String索引超出范围:-1错误。
String html = "<img src='http://res.cloudinary.com/test/image/upload/v1/testFolder/1024x1024.jpg'/>";
html.substring((html.indexOf("'")), html.indexOf("'"));
我还尝试了html.substring((html.indexOf("'")) +1 , html.indexOf("'"));
如何获取'
和'
之间的网址?
答案 0 :(得分:3)
您需要保留第一个索引,以便搜索超出该点的下一个索引
int idx = html.indexOf("'") + 1;
int idx2 = html.indexOf("'", idx); // this will find the next ' character
System.out.println(html.substring(idx, idx2));
答案 1 :(得分:1)
您必须将html.indexOf(&#34;&#39;&#34;)更改为html.lastIndexOf(&#34;&#39;&#34;)。
试一试:
public static void main(String[] args) throws ClassNotFoundException {
String html = "<img src='http://res.cloudinary.com/test/image/upload/v1/testFolder/1024x1024.jpg'/>";
System.out.println(html.substring(html.indexOf("'") + 1, html.lastIndexOf("'")));
}
答案 2 :(得分:0)
你也可以使用正则表达式模式......
Pattern p = Pattern.compile("'(.*?)'");
Matcher m = p.matcher(html);
m.find();
m.group(1); // will return http://res.cloudinary.com/test/image/upload/v1/testFolder/1024x1024.jpg