次のような文字列があります。
String identifier ="fmt{value}";
今、この文字列を操作して、識別子から 2 つの文字列を取得する方法が必要です
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
これを試して:
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
}
楽しんで :)