-1

たとえば、ビンゴという文字列があり、それを小さな部分に分割して、それぞれを文字列配列にします。

String s = "BINGO"

このようにしたいと思います。

String s[] = new String[s.length];
s[0] = B;
s[1] = I;
s[2] = N;
s[3] = G;
s[4] = O;

これを試しましたが失敗しました。

public static void main(String[] args) {


    String sentence = "BINGO";
    String words[] = sentence.split("a-zA-Z");

   for (String word : words) {
    System.out.println(word);
}

「BINGO」を出力するだけですが、分割したいのですが、どの正規表現を使用すればよいですか?

4

4 に答える 4

1

文字の配列に変換することをお勧めします

char[] letters = word.toCharArray();
于 2012-12-10T08:51:36.863 に答える
1

使用するsentence.split("");

  1. split メソッドは、何を分割するかによって正規表現を取得します。これは、正規表現によってキャッチされたすべてが結果にならないことを意味します。
  2. 正規表現で文字をキャッチしたい場合はa-zA-Z、角括弧 ( [a-zA-Z]) で囲む必要があります。正規表現のドキュメントを参照してください。
  3. 結果のすべての文字を取得する場合は、空の文字列を使用します。空白が必要ない場合は、\\s*(whitespace characters 0 or more times)を使用します

編集:

(?!^)前の場所\\s*^は文字列の先頭であり、それを(?!^)否定します。
したがって(?!^)\\s*、文字列の開始点ではないことを意味し、空白は 0 以上です。

于 2012-12-10T08:44:06.973 に答える
0

も使用できますString.getChars()

于 2012-12-10T08:50:39.580 に答える
0
String sentence = "BINGO";
String words[] = sentence.split(""); // empty regex

for (String word : words) 
        System.out.println(word);
于 2012-12-10T08:55:34.437 に答える