String TextValue = "hello{MyVar} Discover {MyVar2} {MyVar3}";
String[] splitString = TextValue.split("\\{*\\}");
我得到的输出是 [{MyVar, {MyVar2, {MyVar3]
in splitString
但我的要求是保留那些分隔符 {}
,即 [{MyVar}, {MyVar2}, {MyVar3}]
。
需要一种方法来匹配上面的输出。
最佳答案
像这样使用:
Pattern p = Pattern.compile("(\\{\\w+\\})");
String str = ...
Matcher m = p.matcher(str);
while(m.find())
System.out.println(m.group(1));
请注意,上面的代码未经测试,但会查找大括号内的单词并将它们放在一个组中。然后它将遍历字符串并输出与上面的表达式匹配的任何字符串。
正则表达式的示例可用here .
关于java - 在 Java 中使用 String.split() 时如何保留分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39285267/