Синтаксис, экранирование, что неверно ?

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
freeman
лейтенант
Сообщения: 734
Зарегистрирован: 2007-03-18 5:13:25

Синтаксис, экранирование, что неверно ?

Непрочитанное сообщение freeman » 2008-10-27 12:37:34

Некорректно работает мой шаблон url_regex в squid и ведёт (результаты даёт), в точности как приведенные ниже примеры с grep. В общем сейчас совсем голова не варит, не пойму логики, почему апример тут ловится всё подряд начинающееся с http://se при шаблоне http://*sex*

Код: Выделить всё

$ echo "http://____sex_____" | grep "http://*sex*"
$ echo "http://sex_____" | grep "http://*sex*"
http://sex_____
$ echo "http://seW_____" | grep "http://*sex*"
http://seW_____
Остатся должен только один ...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Yam
сержант
Сообщения: 226
Зарегистрирован: 2008-10-11 19:19:24
Откуда: 2:5093/41

Re: Синтаксис, экранирование, что неверно ?

Непрочитанное сообщение Yam » 2008-10-27 14:11:49

Потому что это не шаблон, а regexp, и символ "*" значит не то что вы подумали. Это на wildcard.
man grep:

Код: Выделить всё

 *      The preceding item will be matched zero or more times.
Ваш шаблон http://*sex* матчит любое сочетание начинающиеся с произвольного набора символов, в котором встречается последовательность http:/ после которого может встретиться символ / ноль или более раз, после чего идет последовательность se и символ "x" повторяющийся ноль или более раз, после чего может быть произвольный набор символов. Отсюда и такие результаты.

Читайте про regexp.

Аватара пользователя
freeman
лейтенант
Сообщения: 734
Зарегистрирован: 2007-03-18 5:13:25

Re: Синтаксис, экранирование, что неверно ?

Непрочитанное сообщение freeman » 2008-10-27 17:45:26

Сенкс, слона то я и заб[ы|и]л, разговариваю с китайцем по русски и не понимаю чего он не то делает :)
Остатся должен только один ...