читал perldoc perlre узнал много нового,
это я к параметру 'o' , который применли Дмитрий, а он означает:
из perdoc perlop
 qr/STRING/msixpo
               This operator quotes (and possibly compiles) its STRING as a
               regular expression.  STRING is interpolated the same way as
               PATTERN in "m/PATTERN/".  If "'" is used as the delimiter, no
               interpolation is done.  Returns a Perl value which may be used
               instead of the corresponding "/STRING/msixpo" expression. The
               returned value is a normalized version of the original pattern.
               It magically differs from a string containing the same
               characters: "ref(qr/x/)" returns "Regexp", even though
               dereferencing the result returns undef.
и далее
  Options are:

                   m   Treat string as multiple lines.
                   s   Treat string as single line. (Make . match a newline)
                   i   Do case-insensitive pattern matching.
                   x   Use extended regular expressions.
                   p   When matching preserve a copy of the matched string so
                       that ${^PREMATCH}, ${^MATCH}, ${^POSTMATCH} will be 
defined.
                   o   Compile pattern only once.
компилировать выражение только 1 раз, useful ;)


14.09.2011, 21:12, "Nikolay Mishin" <[email protected]>:
> Спасибо Дмитрий.. почерпнул очень много хороших идей, и рассылка, которая 
> казалось по началу сухой  и инертной (раньше)
> оказалась очень полезной, спасибо !
> да - тесты нужны, особенно на баги
> и индексы - тоже золотая вещь.. особенно среди гигабайт информации
>
> 14.09.2011, 21:02, "Dmitry Karpich" <[email protected]>:
>
>>  On Sep 14, 2011, at 8:42 PM, Nikolay Mishin wrote:
>>>   14.09.2011, 20:06, "Dmitry Karpich" <[email protected]>:
>>  <.. mass skip ..>
>>
>>  Есть несколько идей, над которыми я предлагаю вам подумать, возможно это 
>> будет вам интересно:
>>
>>  1) не пытайтесь субоптимизировать программу, скорее всего "бутылочное 
>> горлышко" возникнет не здесь. достаточно того, чтобы оно работало корректно 
>> ( а вот с корректностью стоит возится столько, сколько получится 
>> "выциганить" времени. тесты наше все )
>>
>>  2) используйте только те фичи, которые вам нужны. если вы можете твердо 
>> сформулировать причину использования фичи - отлично. если нет - ну зачем вам 
>> эта головная боль?
>>
>>  3) используйте основной поток данных для его обработки. обычно всегда есть 
>> какой-нить цикл - так не гоняйте его впустую
>>
>>  4) если вам что-то где-то надо будет искать - имитируйте БД. стройте 
>> индекс. индекс - это хорошо, fullscan - плохо.
>>
>>  5) plugable - хорошо и очень OOP. даже plugable ready.
>>
>>  Не воспринимайте это как ммм... ну, не важно.
>>  Это дружеский совет.
>>>   --
>>>   Nikolay Mishin
>>>   --
>>>   Moscow.pm mailing list
>>>   [email protected] | http://moscow.pm.org
>>  --
>>  Moscow.pm mailing list
>>  [email protected] | http://moscow.pm.org
>
> --
> Nikolay Mishin

--
Nikolay Mishin
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить