我有字符串变量,我希望得到括号内的单词。然后,我想将括号内的单词存储到另一个变量中。最后我想从括号内的单词释放第一个字符串变量。
这是一个例子:
String a = "nemenin yang ngebet sangat ingin belanja [Mon Sep 22 13:46:19 ICT 2014]";
我希望输出变成这样:
String b = "nemenin yang ngebet sangat ingin belanja";
String c = "[Mon Sep 22 13:46:19 ICT 2014]";
我该怎么做?
答案 0 :(得分:1)
你可以这样做:
Matcher m = Pattern.compile("(.+)(\\[.+\\])").matcher(a);
if (m.matches())
{
String b = m.group(1), c = m.group(2);
// do something
}
答案 1 :(得分:0)
根据空格分割输入字符串,然后打开方括号。
String a = "nemenin yang ngebet sangat ingin belanja [Mon Sep 22 13:46:19 ICT 2014]";
String tok[]= a.split("\\s+(?=\\[)");
String b = tok[0];
String c = tok[1];
System.out.println(b);
System.out.println(c);
<强>输出:强>
nemenin yang ngebet sangat ingin belanja
[Mon Sep 22 13:46:19 ICT 2014]
答案 2 :(得分:0)
答案 3 :(得分:-1)
使用以下
String a = "nemenin yang ngebet sangat ingin belanja [Mon Sep 22 13:46:19 ICT 2014]";
String tok[]=a.split(" \\[");
for(String test:tok){
System.out.println(test);
}
输出
nemenin yang ngebet sangat ingin belanja
Mon Sep 22 13:46:19 ICT 2014]
答案 4 :(得分:-1)
试试这个
public static void main(String[] args) {
String str = "nemenin yang ngebet sangat ingin belanja [Mon Sep 22 13:46:19 ICT 2014]";
String strBeforeBracket = str.substring(0, str.lastIndexOf("[") - 1);
String strInBracket = str.substring(str.lastIndexOf("["),
str.lastIndexOf("]") + 1);
System.out.println("String outside bracket : " + strBeforeBracket);
System.out.println("String in bracket : " + strInBracket);
}
输出
String outside bracket : nemenin yang ngebet sangat ingin belanja
String in bracket : [Mon Sep 22 13:46:19 ICT 2014]