如何提取两个分隔符之间的字符串
可能的重复:
两个分隔符之间的子字符串
我有一个字符串,如
“ABC[这是为了提取]”
我想在java中提取该部分。我正在尝试使用拆分,但它没有按照我想要的方式工作。有人有建议吗?"This is to extract"
可能的重复:
两个分隔符之间的子字符串
我有一个字符串,如
“ABC[这是为了提取]”
我想在java中提取该部分。我正在尝试使用拆分,但它没有按照我想要的方式工作。有人有建议吗?"This is to extract"
如果字符串中只有一对方括号 ( ),则可以使用 :[]
indexOf()
String str = "ABC[ This is the text to be extracted ]";
String result = str.substring(str.indexOf("[") + 1, str.indexOf("]"));
如果只有1次出现,我想伊万诺维奇的答案是最好的方法。但是,如果出现多次,则应使用正则表达式:
\[(.*?)\]
这是你的模式。在每一个都会得到你的字符串。group(1)
Pattern p = Pattern.compile("\\[(.*?)\\]");
Matcher m = p.matcher(input);
while(m.find())
{
m.group(1); //is your string. do what you want
}