Bur*_*ras 3 java string substring indexof
我有以下String myString="city(Denver) AND state(Colorado)";
它重复"("和")"......
我如何检索州名,即科罗拉多州.我尝试了以下方法:
String state = myString.substring(myString.indexOf("state(")+1,myString.indexOf(")"));
Run Code Online (Sandbox Code Playgroud)
但它给了 indexOutOfBoundException
有没有办法指定我需要第二个"("在myString中?我需要结果: String state = "Colorado";
使用lastIndexOf.同时增加初始偏移量以允许子字符串中的字符数state(:
String state = myString.substring(myString.indexOf("state(") + 6, myString.lastIndexOf(")"));
Run Code Online (Sandbox Code Playgroud)
您可以使用正则表达式。
Matcher matcher = Pattern.compile("(state)(\(.*?\))").matcher(text);
String state = matcher.group(2);
Run Code Online (Sandbox Code Playgroud)