我有一个字符串:
String identifier ="fmt{value}";
现在我需要一种方法来操纵这个字符串,从标识符
中获取两个字符串String format="fmt";
String value="value";
要操作的任何正则表达式或本机Java代码。
答案 0 :(得分:1)
试试这个,它可以帮到你
import java.util.StringTokenizer;
public class Sample {
public static void main(String[] args) {
String identifier = "fmt{value}";
StringTokenizer st = new StringTokenizer(identifier, "{}");
System.out.println("---- Split by {} ------");
while (st.hasMoreElements()) {
System.out.println(st.nextElement());
}
}
}
答案 1 :(得分:1)
尝试使用split()
String identifier = "fmt{value}";
String format = identifier.split("\\{")[0];
String value = identifier.split("\\{")[1].split("\\}")[0];
System.out.println(format+" " +value);
输出:
fmt value
答案 2 :(得分:1)
String identifier ="fmt{value}";
String s[] = identifier.split("\\{|\\}");
System.out.println(s[0]);
System.out.println(s[1]);
答案 3 :(得分:1)
试试这个:
public void testSplit() {
String identifier ="fmt{value}";
String[] result = identifier.split("\\{|\\}");
for(String s: result) {
System.out.println(s);
}
}
答案 4 :(得分:0)
是的,您应该能够使用正则表达式。
Pattern pattern;
Matcher matcher;
pattern = Pattern.compile("");//here your regex
matcher = pattern.matcher(identifier);
while(matcher.find()) {
//here your result
}
玩得开心:)