|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrey Sapozhnikov 2:5020/400 20 Mar 2002 18:53:39 To : Igor Paikin Subject : Re: Regexp -------------------------------------------------------------------------------- Igor Paikin wrote: > Hello, Andrey! > You wrote to (Igor Paikin) on Wed, 20 Mar 2002 14:40:11 -0200: > > ??>> $url=~ s/^(http\:\/\/)?(.*)$/http\:\/\/$2/igm; > ??>> Вот это добавляется http:// если его нету. А как сделать то же самое, > ??>> но чтобы добавлялось когда его нету и исходная строчка не пустая? > AS> Заменить .* на .+ > Такая ситуация добавит второй http:// для строки состоящей только из http:// > Думал об этом... Hикто и не предполагал, что такая фигня тоже может попасться :) > AS> P.S. А для внеклассного чтения - perldoc perlre, в особенности на > AS> предмет zero-width negative look-ahead, чтобы не заменять http:// на > AS> http:// там где он уже есть. > Спасибо, почитал, но так и не придумал как сделать такое... s|^(?!http://)(.+)$|http://$1|gim Заодно и ликвидируется предыдущий баг. > AS> ( Впрочем, возможно так и задумано с целью приведения в lower case? ) > неа, хотя это мне нравится :) Андрей --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/52847d783da4.html, оценка из 5, голосов 10
|