3

次の文字列の分割に問題があります。

String str = "eat big mac .at East MacDonald .from onwards";

結果を入れたい

[ eat big mac, .at, East MacDonald, .from, onwards]

スペースやドットで分割できません。分割できる方法はありますか?

4

2 に答える 2

3

特別なトークン (または区切り記号) を使用してキーワードをラップし、この区切り記号を使用して分割できます。

String str = "eat big mac .at East MacDonald .from onwards";
String[] arr = str.replaceAll("(\\.\\w+)", "DELIMITER$1DELIMITER").split("DELIMITER");

これにより、次の出力が生成されます。

[eat big mac , .at, East MacDonald , .from, onwards]

于 2012-10-09T18:11:02.423 に答える
0

使用する文字列ごとにいつでも split() メソッドを使用できます。

String str = "eat big mac .at East MacDonald .from onwards";
String[] spaceDelimitedStr = str.split(" ");
String[] dotDelimitedStr = str.split("\\.");
String[] commaDelimitedStr = str.split(",");

分割関数への入力は正規表現であるため、あらゆる種類の区切りを指定できます

あなたが求めている結果を手に入れるのは非常に難しいと思いますが、なぜこのような形にする必要があるのか​​お尋ねしてもよろしいですか?

于 2012-10-09T17:53:14.297 に答える