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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/371.32  14 Aug 2000  12:52:03
 To : Anton Petrusevich
 Subject : Re: regexp?
 -------------------------------------------------------------------------------- 
 
 <Anton_Petrusevich@p29.f16.n5004.z2.fidonet.org> wrote:
 
 AP> Столкнулся тут с непоняткой одной. Ежели кто растолкует, буду очень
 AP> рад. Итак. 
 
 AP> casus:casus$ cat a
 AP> F11=
 AP> F12
 AP> F1
 AP> F13
 
 AP> casus:casus$ perl -nle 'print if /F\d{1,2}[^=]/' a
 AP> F11=
 AP> F12
 AP> F13
 
 AP> Вроде как квантификатор {1,2} должен работать по принципу максимальной
 AP> жадности и съедать все цифирьки (можно поставить ``+'', ничего не
 AP> изменится), далее проверяем на наличие отсутствия сивола ``=''. Чего ради
 
 По принципу максимальной жадности, но с тем, чтобы все выражение все же
 отматчилось.
 
 AP> всплывает строчка ``F11=''?
 
 От F\d[^=]. F\d\d[^=] не матчится. Замечу, кстати, что F12 и F13 матчатся
 точно так же. Потому что и для них F\d\d[^=] не матчится - ну нету там после
 второй цифры никаких символов.
 
 AP> Hе понятно. Куда делась ``F1''? Впрочем,
 
 Как это куда? [^=] - это один символ, не равный =. А не то, что ты подумал.
 
 AP> продолжим: 
 AP> casus:casus$ perl -nle 'print if /F\d{1,2}(?!=)/' a
 
 Это уже лучше. Hо все еще не то, что тебе надо. В зависимости от задачи могут
 подойти варианты
 
 /^F\d{1,2}$/ (строка _состоит из_ F и одной или двух цифр; шаг влево, шаг
 вправо приравнивается к бегству), /F\d{1,2}(?!\d*=)/ (F, одна или две цифры,
 дальше что угодно кроме последовательности цифр и знака = за ней), ...
 
 Задачу ты не сформулировал, сам дурак.
 
 AP> F11=
 AP> F12
 AP> F1
 AP> F13
 
 AP> Hифига не понимаю. Да, утвердительное условие работает as expected. 
 
 Остальные тоже. Если expect того, что написано в документации.
 
 -- 
 Счастливо!
   Ран.
 --- ifmail v.2.14.os-p7-tma3
  * Origin: MemoNet (2:5020/371.32@fidonet)
 
 

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

 Тема:    Автор:    Дата:  
 regexp?   Anton Petrusevich   08 Aug 2000 11:31:52 
 Re: regexp?   Ivan Frolcov   08 Aug 2000 11:28:40 
 Re: regexp?   Dmitriy Goldobin   08 Aug 2000 22:23:56 
 Re: regexp?   Artem Chuprina   14 Aug 2000 12:52:03 
Архивное /ru.perl/347349aa54ab.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional