public static void main(String[] args)
{
Pattern p = Pattern.compile("^([^a-zA-Z]*([a-zA-Z]+)[^a-zA-Z]*)+$");
Matcher m = p.matcher("1 name");
Matcher m1 = p.matcher("10,000");
Matcher m2 = p.matcher("na123me");
Matcher m3 = p.matcher("na 123, 000");
Matcher m4 = p.matcher("13bbbb13jdfgjd43534 fkgdfkgjk34 rktekjg i54 ");
if (m.matches())
System.out.println(m.group(1));
if (m1.matches())
System.out.println(m1.group(1));
if(m2.matches())
System.out.println(m2.group(1));
if(m3.matches())
System.out.println(m3.group(1));
if (m4.matches())
System.out.println(m4.group(1));
}
Вышеприведенное должно соответствовать любой букве в нижнем и верхнем регистре. Если регулярное выражение возвращает совпадение, строка содержит в себе букву.
Результат
1 Имя
меня
на 123, 000
I54
Заявления, которые не содержат никаких писем не соответствуют выражению.
Что вы подразумеваете под алфавитами? Только буквенные символы?/[a-zA-Z] */ – WhirlWind
, пожалуйста, уточните свой вопрос. – Femaref
Что вы подразумеваете под «find, если строка имеет алфавиты»? Вы хотите узнать, имеет ли строка алфавитный символ? – goedson