У меня есть набор строк, например:Получить строку слов внутри строки (регулярное выражение Java)
HH, 123 Hello My Name Is John 123
И я использую выражение последующих регулярных выражений чтобы получить фразу «Привет, меня зовут Джон»,
"\\s[A-Za-z]+"
Тогда я использую следующую команду для проверки, если регулярное выражение соответствует фразе, которую я хочу:
while(m.find()) {
System.out.println(m.group());
}
Мой вопрос в том, почему результат печати следующее:
Hello
My
Name
Is
John
и не "Привет меня зовут Джон.
Используйте '" \\ s [A-Za-Z] + (?: \\ s + [A-Za-Z] +) * "' –
Wow your amazing! – QQQ
Что именно вы хотите, чтобы регулярное выражение соответствовало? Тот, который вы используете в настоящий момент, будет соответствовать символу пробела (включая вкладку и т. Д.), За которым следует один или несколько буквенных символов без пробелов между ними. – DanielGibbs