我有一个字符串:
String identifier ="fmt{value}";
现在我需要一种方法来操作这个字符串从标识符中获取两个字符串
String format="fmt";
String value="value";
要操作的任何正则表达式或本机 Java 代码。
试试这个,它可能对你有帮助
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());
}
}
}
尝试使用split()
String identifier = "fmt{value}";
String format = identifier.split("\\{")[0];
String value = identifier.split("\\{")[1].split("\\}")[0];
System.out.println(format+" " +value);
输出:
fmt value
String identifier ="fmt{value}";
String s[] = identifier.split("\\{|\\}");
System.out.println(s[0]);
System.out.println(s[1]);
尝试这个:
public void testSplit() {
String identifier ="fmt{value}";
String[] result = identifier.split("\\{|\\}");
for(String s: result) {
System.out.println(s);
}
}
是的,您应该可以使用正则表达式来做到这一点。
Pattern pattern;
Matcher matcher;
pattern = Pattern.compile("");//here your regex
matcher = pattern.matcher(identifier);
while(matcher.find()) {
//here your result
}
玩得开心 :)