Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Paul Kulchenko                       2:5020/400     07 Aug 2000  22:11:02
 To : All
 Subject : Re: regexp
 -------------------------------------------------------------------------------- 
 
 Hi, Artur!
 
 Artur Penttinen wrote:
 
 > > > > Как перловым регекспом удалить скажем второй TAB в строке?
 > > > > s/\t// - Удаляет первый
 > > > > s/t//g -Удаляет все.
 > > > > Как удалить только второй?
 > > А if опять же зачем? Ведь тривиальнейший регексп:
 > >
 > > $str =~ s/.*?\t.*(\t).*//;
 > >
 > > будет IMHO делать ровно тоже самое, причем только тогда, когда
 > > совпадение будет иметь место. Даже ? кажется не потребуется...
 
 Потребуется.
 
 > 
 >   # perl -de0
 >   DB<1> $str = "a\tb\tc";
 > 
 >   DB<2> if ($str =~ m/^(.*?\t.*?)\t(.*)$/) { $str = $1 . $2; }
 > 
 >   DB<3> p $str
 > a       bc
 >   DB<5> $str = "a\tb\tc";
 > 
 >   DB<6> $str =~ s/.*?\t.*(\t).*//;
 > 
 >   DB<7> p $str
 > 
 >   DB<8>
 > 
 >   Ы?
 
 Ладно придираться-то. 
 Естественно нужно добавить кое-что в правой части и кое-что в левой :) 
 $str =~ s/(.*?\t.*)\t/$1/;
 Идея-то правильная.
 
 Best wishes, Paul.
 --- ifmail v.2.15dev5
  * Origin: Rostelecom/Internet Centre (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: regexp   Artur Penttinen   07 Aug 2000 10:53:27 
 Re: regexp   Serge Shikov   07 Aug 2000 12:19:30 
 Re: regexp   Artur Penttinen   07 Aug 2000 15:21:57 
 Re: regexp   Paul Kulchenko   07 Aug 2000 22:11:02 
 Re: regexp   Serge Shikov   08 Aug 2000 11:17:45 
 Re: regexp   Artur Penttinen   08 Aug 2000 13:02:51 
 Re: regexp   Artur Penttinen   08 Aug 2000 11:57:24 
Архивное /ru.perl/355599ba1a71.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional