Русские символы regex в java

301
17 июня 2017, 12:04

Почему получаются разные результаты следующих методов?

System.out.println("Путь\\Файл1.html".replaceAll("\\w+\\.\\w+",""));
System.out.println("Path\\File1.html".replaceAll("\\w+\\.\\w+",""));

Вывод:

Путьайл
Path\
Answer 1

Потому что \w в регулярных выражения Java по умолчанию не находит все буквы и цифры Юникода.

Чтобы \w находил любые буквы и цифры, используйте флаг Pattern.UNICODE_CHARACTER_CLASS, или, внутри шаблона, (?U).

Онлайн-тест тут:

и

READ ALSO
Пример использования SpeechRecognizer

Пример использования SpeechRecognizer

Здравствуйте, может ли кто дать простой пример использования SpeechRecognizer? Мне нужно чтобы пользователь говорил на английском, и это выводилось...

283
background-size в некоторых браузерах

background-size в некоторых браузерах

ЗдравствуйтеМне нужно поставить фоновую картинку для элемента меню, так, чтобы эта картинка была прижата к низу элемента, и растянута на всю...

266
Как вывести html с input?

Как вывести html с input?

Как сделать чтобы html код, который введен в поле, выводился правильно, то есть текст стал жирным?

380
Перенос текста c фоном

Перенос текста c фоном

Есть вот такой элемент, который нужно сверстать:

244