| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Регулярные выражения > \w - символ или слово |
| Автор: Akella 11.3.2013, 15:51 |
| здесь написано, что \w - это слово http://regexpr.ru/cheatsheet/ а здесь, что \w - это символ http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F Это какие-то разные стандарты? |
| Автор: Pfailed 11.3.2013, 17:06 |
| символ |
| Автор: DurRandir 11.3.2013, 21:13 | ||
perldoc perlre:
|
| Автор: Arantir 11.3.2013, 22:04 | ||
Akella, там написано, цитирую,
Что понимать следует как "Word Character". Что дословно можно перевести, как "символ слова" или более приятно на слух "словесный символ", в адаптированной версии "символ, из которого состоят слова". Что есть, просто по русски и по версии вики, — "буквенный символ", исходя из понимания термина "буква". Как-то так =) |
| Автор: Akella 12.3.2013, 12:25 | ||||
ясно, а то у меня проблемы с составлением выражения относительно такого текста:
Не получается найти три числа, обозначенные красным. Например, площадь общую. Вот выражение:
по идее \w+ должно найти слово "площадь", за которым расположен пробел и далее цифры, далее опять пробел и "м.кв.". Но выражение ничего не находит. |
| Автор: DurRandir 12.3.2013, 13:06 |
| Скорее всего, проблемы с кодировкой. То, что \w матчит, сильно зависит от локали и utf'ности текста _и_ регулярки. |
| Автор: alezzz 12.3.2013, 13:13 |
| в качестве альтернативы локали попробуйте заменить \w на [а-я], с cp1251 кажется нормально работает, с utf не очень. |
| Автор: Akella 12.3.2013, 13:30 |
пробовал да, так работает, я просто забыл написать об этом но хотелось бы именно \w+ Добавлено через 33 секунды вот тебе и юникод |
| Автор: alezzz 12.3.2013, 13:56 |
Для юникода можно использовать use utf8; только-что посмотрел, работает. Но вы, если не ошибаюсь, регулярки не в perl используете? |
| Автор: Akella 12.3.2013, 14:18 |
| Нет, DiRegExp для Delphi, Perl совместимые. |
| Автор: alezzz 12.3.2013, 14:22 | ||||
я про другое
|
| Автор: Akella 12.3.2013, 14:23 |
да, есть такое![]() |
| Автор: DurRandir 13.3.2013, 01:46 | ||
Не совсем. В 1251 ё выпадает - надо [ёа-я]. Но вроде бы проблема решилась) |
| Автор: alezzz 13.3.2013, 19:22 |
| да, помнил про ё, но забыл где именно с ним проблема |