は、{」私が使って試してみました:Javaの特別な区切り文字で分割した文字列は、私は区切り文字を}}を使用しての部分に分割したい文字列を、持っている
String delims="['}},{\"']+";
String field[]=new String[50];
field=subResult.split(delims);
をしかし、それは:-(動作していませんあなたが知っている、私はdelimsでどのような表現を使うべきですか?
感謝をあなたの回答
は、{」私が使って試してみました:Javaの特別な区切り文字で分割した文字列は、私は区切り文字を}}を使用しての部分に分割したい文字列を、持っている
String delims="['}},{\"']+";
String field[]=new String[50];
field=subResult.split(delims);
をしかし、それは:-(動作していませんあなたが知っている、私はdelimsでどのような表現を使うべきですか?
感謝をあなたの回答
をするためにデリミタが単純であれば}},{
が、その後subResult.split("\\}\\},\\{")
が動作するはず
String fooo = "asdf}},{bar}},{baz";
System.out.println(Arrays.toString(fooo.split("\\}\\},\\{")));
あなたはそれをエスケープする必要があります。
String.split("\\}\\},\\{");
{
は、文字クラスの始まりを正規表現のメタ文字です。あなたは\\
とそれに先行することによってそれをエスケープする必要がリテラル{
に合わせて:あなたは、正規表現エンジンは、それが先行していないとして、それは文字通り}
であることを推測すると、あなたの正規表現で}
をエスケープする必要はありません
String delims="}},\\{";
String field[] = subResult.split(delims);
オープニングで{
。それはそれを逃れることに害はないと言いました。
あなたが必要とするよりも、それはより複雑に作ることができます。
String text = "{{aaa}},{\"hello\"}";
String[] field=text.split("\\}\\},\\{\"");
System.out.println(Arrays.toString(field));
用途:あなたは、区切り文字に二重引用符を `" `
Pattern p = Pattern.compile("[}},{\"]");
// Split input with the pattern
String[] result = p.split(MyTextString);
が必要ですか? –