Как получить массив символов (Az, без чисел) из заданной строки? - PullRequest
0 голосов
/ 20 февраля 2020

Мне нужно java регулярное выражение, чтобы ответить на мой вопрос.

это мой код:

char[] array = s.split("regex");

Ответы [ 2 ]

0 голосов
/ 20 февраля 2020

Как вы сказали в своем комментарии ниже к своему вопросу, вы действительно хотите получить отдельные символы данной строки, чего можно добиться с помощью метода toCharArray() в классе String.

String s = "ABCDEfghi1234";
char[] chars = s.toCharArray();

Если вам также нужно ограничить результирующие символы определенным набором символов, сначала вы должны удалить все остальные символы из строки, что можно сделать с помощью простой замены регулярного выражения.

String s = "ABCDEfghi1234_.,-DSsf";
s = s.replaceAll("[^A-Za-z]", "");
char[] chars = s.toCharArray();

Используемый вами метод split обычно используется для разделения строк в определенных позициях, например, если вы хотите разделить предложение, разделенное пробелами.

String sentence = "The quick brown fox jumps over the lazy dog";
String[] words = sentence.split("\\s");
// words now contains the extracted words of the sentence
// words[0] == "The"
// words[1] == "quick"
// ...
0 голосов
/ 20 февраля 2020

Сначала замените небуквенные символы пробелом, затем преобразуйте строку в массив символов:

char[] onlyLetters = "regex".replaceAll("[^A-Za-z]+", "").toCharArray(); 
...