Wordを構成文字に分割するにはどうすればよいですか?
動作していないコードの例
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]でなければなりません。
split("");
を使用する必要があります。
それはすべての文字でそれを分割します。
ただし、次のようにString
の文字を反復処理する方が良いと思います。
for (int i = 0;i < str.length(); i++){
System.out.println(str.charAt(i));
}
別の形式でString
の別のコピーを作成する必要はありません。
"Stack Me 123 Heppa1 oeu".toCharArray()
?
空白を含まない数字を含む:
"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
_
使用できます
String [] strArr = Str.split("");
char[] result = "Stack Me 123 Heppa1 oeu".toCharArray();
彼はスペースを出力したくないと確信しています。
for (char c: s.toCharArray()) {
if (isAlpha(c)) {
System.out.println(c);
}
}
String[] result = "Stack Me 123 Heppa1 oeu".split("**(?<=\\G.{1})**");
System.out.println(Java.util.Arrays.toString(result));