Подтвердить что ты не робот

Разделение слов на буквы в Java

Как вы можете разбить слово на его составляющие буквы?

Пример кода, который не работает

 class Test {
         public static void main( String[] args) {
             String[] result = "Stack Me 123 Heppa1 oeu".split("\\a");                                                                                   

             // output should be
             // S
             // t
             // a
             // c
             // k
             // M
             // e
             // H
             // e
             // ...
             for ( int x=0; x<result.length; x++) {
                 System.out.println(result[x] + "\n");
             }
         }
     }

Проблема заключается в символе \\a. Он должен быть [A-Za-z].

4b9b3361

Ответ 1

Вам нужно использовать split("");.

Это разделит его на каждый символ.

Однако я думаю, что было бы лучше перебирать символы String так:

for (int i = 0;i < str.length(); i++){
    System.out.println(str.charAt(i));
}

Нет необходимости создавать другую копию вашего String в другой форме.

Ответ 2

"Stack Me 123 Heppa1 oeu".toCharArray()?

Ответ 3

Включая числа, но не пробелы:

"Stack Me 123 Heppa1 oeu".replaceAll("\\W","").toCharArray();

=> S, t, a, c, k, M, e, 1, 2, 3, H, e, p, p, a, 1, o, e, u

Без номеров и пробелов:

"Stack Me 123 Heppa1 oeu".replaceAll("[^a-z^A-Z]","").toCharArray()

=> S, t, a, c, k, M, e, H, e, p, p, a, o, e, u

Ответ 4

 char[] result = "Stack Me 123 Heppa1 oeu".toCharArray();

Ответ 5

Вы можете использовать

String [] strArr = Str.split("");

Ответ 6

Я уверен, что он не хочет выводить пробелы.

for (char c: s.toCharArray()) {
    if (isAlpha(c)) {
       System.out.println(c);
     }
}

Ответ 7

String[] result = "Stack Me 123 Heppa1 oeu".split("**(?<=\\G.{1})**");
System.out.println(java.util.Arrays.toString(result));