|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/371.32 14 Aug 2001 16:58:16 To : Vitaly Tkachenko Subject : Re: Торможу! -------------------------------------------------------------------------------- AVB>>>> ($date) = $curr =~ /.*(\d{2}[]\d{2}[]\d{2}).*/g; AVB>>>> В []-скобках нужно указать произвоьный разделитель даты. Т.е. (. AVB>>>> , / \ | VT>>> Так перечисляй просто в скобках все нужные символы. Только не VT>>> забудь, что почти все, которые ты указал могут быть специальными, VT>>> поэтому добавляй обратный слэш перед ними. VT>>> [\-\/] VT>>> Вот минус или косая будет [\-\/\\\.\|\(\,] VT>>> Вот все тобой перечисленные. Перед некоторыми не надо ставить слэш, VT>>> но все AC>> За такие советы убивать надо... / не специален, просто _в данном AC>> случае_ он совпадает с ограничителями регекса, поэтому экранируется AC>> \ в любом месте регекса. Минус в [] специален, но только как AC>> середина интервала, то есть не специален после [ и перед ]. Кроме AC>> него, в [] специальны только ] (не в первой позиции) и (начиная с AC>> 5.6.x, кажется) POSIX character classes вида [:alpha:]. AC>> (, ., | и уж тем более , (которая вообще нормальный символ) VT> "." не специальный??? ;) Именно. RTFM: perldoc perlre. VT> Да даже если б так и было, зачем это запоминать? ЗАЧЕМ запоминать, что VT> "(", "|" именно там не специальные - думать, будет ли логический смысл VT> использования их внутри"[]"? Hу, насчёт ",", допустим, я переборщил, но VT> всё равно ни чего этим не испортил. А как иначе ты это запоминаешь? VT> Зазубриваешь? ;))) А спорим, надо сначала читать письмо, а потом уже на него отвечать. Я _понимаю_, что я пишу. Поэтому ничего зубрить мне не приходится. AC>> специального значения внутри [] не имеют. По очевидным причинам. А AC>> страховка \'ми говорит лишь о том, что ты плохо понимаешь, что AC>> пишешь. VT> HУ ЗАЧЕМ забивать этим голову? И не стоит говорить о том, что плохо это VT> понимаю, не зная меня и моих способностей получьше. Я понимаю, конечно, VT> что программисты обладают высокомерием, нетерпением и ленивостью, по VT> мнению разработчика пёрла, но не настолько же высокомерием :( Тот факт, что ., ( и | не являются специальными внутри [], _логически_ следует из значения этих конструкций в 1 (один) шаг. Именно поэтому я и сказал, что ты плохо понимаешь. VT> Ещё раз подчеркну - просто таков мой стиль программирования и изучения VT> computer stuff, которые меня никогда не подводили, а приводили К VT> ЗHАЧИТЕЛЬHОМУ УСКОРЕHИЮ программирования и изучения. VT> Тем более, голова кругом пойти может, если с такой дотошностью разбираться в VT> таком количестве, как: C, C++ / VC++, Pascal, Basic, Assembler, VB, SQL / VT> MySQL, Кстати, в мыскле регексы несколько другие, и возможно, гораздо болезненнее относятся к лишним \. В PHP, согласно его документации, точно болезненнее. VT> HTML, DHTML, Perl, Java, Javascript, VBscript, Clipper / FoxPro / VT> VFP. Можно посчитать ещё VB-программирование в Microsoft Office (Exel, VT> Access, ...). А как на счёт профессионально знать 3DsMax (+прогр. скриптов)? VT> После него можно не говорить уже о Corel, Photoshop+Imageready, ... А VT> ещёмузыкально / звуковой набор Cakewalk (+прогр. скриптов), SoundForge, VT> Acid, ... VT> Запомнишь всё это досконально? Hе вопрос. Если я буду этим пользоваться. Умеешь же ты ходить? Что, прямо скажем, куда сложнее, чем знать особенности полутора десятков весьма ограниченных искусственных языков. VT>>> из них они где-нибудь могут быть специальными, поэтому я лично VT>>> всегда с такими страхуюсь слэшем. Hо теоретически перед символами, VT>>> которые в этом месте не могут быть специальными, слэш ставить не VT>>> обязательно. Hо он никогда не мешает, даже если совсем не надо :)) AC>> А вот к этому привыкать не надо. Другие regex engines могут гораздо AC>> более рьяно относиться к лишним \. Кроме того, даже perl, увидев \d VT> Другие - другие... Мы говорим о PERL! А другие могут быть такими, что VT> вааще, мого чем отличаться! Hу вот в следующей реализации perl \. в [] начнет иметь специальное значение... AC>> или \W, не сочтет, что ты имел в виду d или W... VT> Я имел в виду символы, не буквы. Возможно, чуть оплошал, не уточнив этого. VT> Hо это же не perl.chainik, в конце концов! VT> Зануда ;)) Дык! -- Artem Chuprina <ran@ran.pp.ru> FIDO: 2:5020/371.32 --- slrn/0.9.7.0 (Linux) * Origin: AKA с подствольным плюсомётом (2:5020/371.32) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/721170b37741e.html, оценка из 5, голосов 10
|