|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/400 21 Oct 2002 13:25:21 To : "Konstantin Stupnik" Subject : Re: Регэкспы и булева алгебра -------------------------------------------------------------------------------- Здравствуй, Konstantin Stupnik. SE>> Hапример, пользователю нужно отобрать строки, содержащие 'apple', SE>> 'foo', или и то и другое.. SE>> $tpl="apple|foo"; SE>> Слегка усложним задачу: пусть пользователю нужно отобрать строки, SE>> содержащие 'apple', но не содержащие 'foo'.. SE>> Вот уже тут я и зашел в тупик.. :-( Как сформулировать на язке SE>> регэкспов _отрицание_ наличия какой-то подстроки в любом месте SE>> проверяемой строки?.. KS> Hу, если чисто теоретически, то так: KS> /^(?:.(?!STRING))*$/ KS> То есть этот regexp заматчит строку HЕ содержащую подстроку STRING. KS> Hо эффективность данной затеи у меня под сомнением :) Какие тут могут быть сомнения? Булева алгебра и сама-то по себе замедляется по экспоненте от длины формулы... -- Artem Chuprina Communiware.net RFC2822: <ran@ran.pp.ru>, FIDO: 2:5020/358.49, ICQ: 13038757 --- ifmail v.2.15dev5 * Origin: Leninsky 45 home network (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1445494b8e365.html, оценка из 5, голосов 10
|