|
|
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Почему регулярка не понимает кириллицу? Кодировка файла - utf-8. Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 09:47 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Читать доку по регулярным выражениям в Java http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html Начать с определения вашего \W RTFM \w A word character: [a-zA-Z_0-9] \W A non-word character: [^\w] Затем уделить внимание всему что касается Unicode. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 10:15 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Понятно. Ввело в заблуждение то, что в некоторых других реализациях ядра регулярных выражений (Oracle, Perl) в множество \w попадали также и буквы кириллицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 10:26 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Возникают дополнительные сложности: если \w можно заменить на [а-яА-Я\w] , то как быть с \b ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 10:54 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
publexusВвело в заблуждение то, что в некоторых других реализациях ядра регулярных выражений (Oracle, Perl) в множество \w попадали также и буквы кириллицы. Вот тут развернутый ответ. Небольшими манипуляциями можно и добиться желаемого поведения. http://stackoverflow.com/questions/4304928/unicode-equivalents-for-w-and-b-in-java-regular-expressions ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 10:55 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
publexusВозникают дополнительные сложности: если \w можно заменить на [а-яА-Я\w] , то как быть с \b ? Вы документацию дочитали, или на середине бросили? UNICODE_CHARACTER_CLASS Код: java 1. Enables the Unicode version of Predefined character classes and POSIX character classes. When this flag is specified then the (US-ASCII only) Predefined character classes and POSIX character classes are in conformance with Unicode Technical Standard #18: Unicode Regular Expression Annex C: Compatibility Properties. The UNICODE_CHARACTER_CLASS mode can also be enabled via the embedded flag expression (?U). The flag implies UNICODE_CASE, that is, it enables Unicode-aware case folding. Specifying this flag may impose a performance penalty. Since: 1.7 See Also: Constant Field Values ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 10:58 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Не работает (Java 1.7): Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 11:28 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Вариант с синтетической заменой работает, но слишком уж громоздкий: Код: java 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 11:34 |
|
||
|
String.replaceAll: регулярное выражение не понимает кириллицу
|
|||
|---|---|---|---|
|
#18+
publexusНе работает (Java 1.7). Код: java 1. 2. 3. 4. 5. 6. А вот использовали бы IntelliJ IDEA, сразу бы увидели ошибку в регулярке. Во-первых \\b, во-вторых matcher.find() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.04.2014, 11:36 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38601637&tid=2127408]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
187ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 235ms |
| total: | 528ms |

| 0 / 0 |
