如何在Java中使用indexOf

时间:2012-03-29 20:31:47

标签: java html xml parsing rss

我正在尝试从以下的html解析标题:

"Website (Newton) at datanucleus.org">Website</a></div>

我正在使用indexOfstrLine.indexOf("\">Website")

我想知道如何在链接之前搜索第一个SPACE。所以我想捕捉“”和“”&gt;网站&lt;“

之间的所有内容

即。 datanucleus.org

有什么想法吗?谢谢!

3 个答案:

答案 0 :(得分:1)

如果您有int idx = str.indexOf(“\”&gt; Website“),您可以使用String.lastIndexOf(”“,idx);来获取前一个空格。然后使用子字符串!

答案 1 :(得分:0)

正则表达式方法可能是最有效的。但是,您可以结合indexOflastIndexOfsubstring来电来执行此操作。

int end = strLine.indexOf("\"Website");
int blank = strLine.substring(0, end).lastIndexOf(' ');
String interestingStuff = strLine.substring(blank + 1, end);

答案 2 :(得分:0)

我认为这就是你想要的:

int end = strLine.indexOf("\">Website");
int start = strLine.lastIndexOf(" ", end);

来自lastIndexOf的文档:

  

返回指定子字符串最后一次出现的字符串中的索引,从指定的索引开始向后搜索。

还有lastIndexOf的版本需要char而不是字符串;在这种特殊情况下可能更有效(但我没有检查过):

int start = strLine.lastIndexOf(' ', end);

对于更复杂的事情,您还可以考虑查看java.util.regex包。