我想编写一个java程序,它读取一行,在行中搜索一个字符串,然后读取搜索到的字符串之后的字符。
例如,我说按以下方式阅读:
+version:20140825+extra_Name:session:13456@field.namer+xy_confirmation_value:IF_ui+XYZ_literal:next+ABC_meaning:next
我想提取+ABC_meaning:
之后的字符串,该字符串应返回next
。
我可以使用indexOf()
来完成此任务吗?
答案 0 :(得分:1)
如果我理解您的问题,那么您可以使用String.indexOf(String)
和String.substring(int)
来使用
String str = "+version:20140825+extra_Name:session:13456@"
+ "field.namer+xy_confirmation_value:"
+ "IF_ui+XYZ_literal:next+ABC_meaning:next";
String toFind = "+ABC_meaning:";
int pos = str.indexOf(toFind);
String found = "";
if (pos != -1) {
found = str.substring(pos + toFind.length());
}
System.out.println(found);
输出是请求的
next
答案 1 :(得分:0)
假设您的字符串为myString
,然后:
int position = myString,indexOf("+ABC_meaning:");
String out = myString.substring(position + "+ABC_meaning:".length);
out
现在包含" next"