我有一个表示Bingo的字符串,我希望将其分解为较小的部分,并使每个部分成为一个字符串数组,例如;
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”而我想分开它们,现在我应该使用什么样的正则表达式?
答案 0 :(得分:1)
使用sentence.split("");
a-zA-Z
放在方括号([a-zA-Z]
)中,阅读regexp文档。 \\s*
(空白字符数为0或更多次)修改强>
在(?!^)
之前放置\\s*
。 ^
是字符串的开头,(?!^)
否定了该字符串
所以(?!^)\\s*
表示不是字符串的起始点,而是空格0或更多的驯服。
答案 1 :(得分:1)
您可能希望转换为字符数组
char[] letters = word.toCharArray();
答案 2 :(得分:0)
您也可以使用String.getChars()
。
答案 3 :(得分:0)
String sentence = "BINGO";
String words[] = sentence.split(""); // empty regex
for (String word : words)
System.out.println(word);