Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Регулярные выражения в Java

7.6K
07 мая 2007 года
JEgor
54 / / 08.11.2006
Сталкнулся с такой проблемой: в ругулярных выражениях метод Pattern p = Pattern.compile(“a*b”); работает только с английскими буквами а сть необходимость валидации русских слов. Возможно ли заставить этот метод понимать и русские буквы?
6.6K
07 мая 2007 года
Aoli
185 / / 22.01.2007
Попробуй. Написать их в utf-8.
7.6K
09 мая 2007 года
JEgor
54 / / 08.11.2006
а можно поподробнее что значит:
Цитата:
Написать их в utf-8.

6.6K
09 мая 2007 года
Aoli
185 / / 22.01.2007
 
Код:
Pattern p = Pattern.compile("\u049*\u050");
7.6K
09 мая 2007 года
JEgor
54 / / 08.11.2006
Эти строчки javac не пропускает.
Тут дело вот в чем, достаю в сервлете строчку методом
String word=req.getParameter("word");
Далее создаю регулярное выражение:
Pattern pattern = Pattern.compile ("[a-zA-Z]{4,20}", Pattern.UNICODE_CASE);

В браузере кодировка Юникод(UTF-8).
Далее следует:

Matcher matcher= pattern.matcher(word);

if (matcher.matches()){
out.println("<h2>true</h2>");
}
else{
out.println("<h2>false</h2>");
}
Запрос всегда выводит false если слово написано на русском
Хотя эти строчки должны понимать и русские слова, где я не прав?
6.6K
09 мая 2007 года
Aoli
185 / / 22.01.2007
 
Код:
Pattern pattern = Pattern.compile ("[a-zа-яA-ZА-Я]{4,20}", Pattern.UNICODE_CASE);

а если поробовать добавить в паттерн русские буквы так?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог