从下载的文件中提取字符串

时间:2013-10-17 11:36:09

标签: java

我需要一些帮助来编辑字符串并将该部分字符串添加到ArrayList个字符串中:

public ArrayList<String> strings = new ArrayList<String>();

基本上我的程序从Internet读取文件并将读取文件的内容设置为String。然后,我想通读字符串内容来查找关键字:

website=http://google.com
website=http://stackoverflow.com

我只想将website=之后的部分添加到字符串数组中,我还想考虑website部分是否存在,因为除了{之外我还会有其他的东西{1}},例如website=。我只是不知道如何做到这一点。

如果有人可以帮我解决这个问题,或者解释一下更好的方法,我可以自己去做一个洞法,这对我有很大帮助。

2 个答案:

答案 0 :(得分:2)

所以你把所有这些都放在一个字符串中?那么正则表达式可能是一种方法,例如, PatternMatcher以及表达式website=(\S+)

示例:

String input = "website=http://google.com ping=http://pong.com website=http://stackoverflow.com";

Pattern p = Pattern.compile( "website=(\\S+)" );
Matcher m = p.matcher( input );

while( m.find() )
{
  System.out.println(m.group(1));
}

输出:

http://google.com
http://stackoverflow.com

答案 1 :(得分:0)

没有单一的方法,但您可以使用的一些东西是: 1. String.contains()函数:使用它来查看字符串是否包含子字符串。为了说明案例敏感性,您可以使用:

str = "website="
yourString.toLowerCase().contains(str.toLowerCase())

您可以与if逻辑结合使用:

if(yourString.toLowerCase().contains(str.toLowerCase())
//do something

您可以获取website=之后的字符索引,如:

str="website=";
int index = yourString.indexOf(str)+str.length();

使用以上所有内容编写符合您需求的逻辑。