Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > 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 |
да, помнил про ё, но забыл где именно с ним проблема |