From: Gennadij Pastuhov 2:5036/26 10 Aug 2021 13:16 +0300
To: All
Subject: Валидация адресов в ДНС записях
Рад всех приветствовать! А особенно - All! Как наиболее кошерно валидировать записи вида 56.34.12.10.in-addr.arpa. IN PTR host1.example.net. ? Требуется проверять корректность ip. Сплитить, реверсить и проверять, или есть готовые решения? ... Jonny wanna live
From: Evgeny Chevtaev 2:5010/275 05 Aug 2021 14:21 +0300
To: Stas Mishchenkov 2:460/5858
Subject: про regexp
Hi Stas! Thursday August 05 2021 13:09, Stas Mishchenkov wrote to Michael Dukelsky: MD>> Вот ответ на последний вопрос: MD>> $body =~ /.*Почта:\s(.*)<\/div>/; MD>> print "email=$1\n"; SM> $body =~ s/.*Почта:\s(.+?)<\/div>/$1/; Оно! Благодарствую! With best regards, Evgeny
From: Stas Mishchenkov 2:460/5858 05 Aug 2021 13:09 +0300
To: Michael Dukelsky 2:5020/1042
Subject: про regexp
Hi, Michael! 04 авг 21 11:15, Michael Dukelsky -> Evgeny Chevtaev: MD> Вот ответ на последний вопрос: MD> $body =~ /.*Почта:\s(.*)<\/div>/; MD> print "email=$1\n"; $body =~ s/.*Почта:\s(.+?)<\/div>/$1/; Have nice nights. Stas Mishchenkov.
From: Alexey Vissarionov 2:5020/545 04 Aug 2021 12:20 +0300
To: Evgeny Chevtaev 2:5010/275
Subject: про regexp
Доброго времени суток, Evgeny! 04 Aug 2021 08:09:38, ты -> All: EC> Подскажите, граждане, как в сабжах приоритеты (или как оно EC> по-умному называется) делать? Есть переменная с многострочным EC> html, где вложенные div'ы: EC> EC> Всякая хрень EC>
Почта: васян@домен
EC>
Телефон: 123
EC> Всякая хрень EC> EC> Hадо почту выкорчевать. Делаю "$body =~ s/.*Почта:\s(.*)<\/div>/$1/", EC> получаю вырезку до последнего div. Как до первого оно делается? EC> Помню, что на эту тему тут пробегал научный труд, но не нашёл того EC> письма. Как написано, так и работает... Напишешь вместо .* хотя бы [^<]+ - будет работать по-другому. -- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii ... Лотерея (сущ.): форма налога на незнание теории вероятности
From: Michael Dukelsky 2:5020/1042 04 Aug 2021 11:15 +0300
To: Evgeny Chevtaev 2:5010/275
Subject: про regexp
Привет, Evgeny! 04 August 2021 08:09, Evgeny Chevtaev послал(а) письмо к All: EC> Подскажите, граждане, как в сабжах приоритеты (или как оно по-умному EC> называется) делать? EC> Есть переменная с многострочным html, где вложенные div'ы: EC> EC> Всякая хрень EC>
Почта: васян@домен
EC>
Телефон: 123
EC> Всякая хрень EC> EC> Hадо почту выкорчевать. Делаю "$body =~ s/.*Почта:\s(.*)<\/div>/$1/", EC> получаю вырезку до последнего div. Как до первого оно делается? Помню, EC> что на эту тему тут пробегал научный труд, но не нашёл того письма. Если ты хочешь получить ответ, надо постараться корректно задать вопрос, так чтобы было понятно, чего ты хочешь. Что такое "почту выкорчевать"? Вырезать из многострочного значения слово "Почта", сделав результатом прежнее значение без этого слова? Получить в качестве результата адрес электронной почты? Вот ответ на последний вопрос: $body =~ /.*Почта:\s(.*)<\/div>/; print "email=$1\n"; З.Ы. Голдед искажает регулярные выражения. Чтобы увидеть регэксп без искажений, надо нажать Alt-Q Желаю успехов, Evgeny! За сим откланиваюсь, Michael. ... node (at) f1042 (dot) ru
From: Evgeny Chevtaev 2:5010/275 04 Aug 2021 06:09 +0300
To: All
Subject: про regexp
Hi All! Подскажите, граждане, как в сабжах приоритеты (или как оно по-умному называется) делать? Есть переменная с многострочным html, где вложенные div'ы: Всякая хрень
Почта: васян@домен
Телефон: 123
Всякая хрень Hадо почту выкорчевать. Делаю "$body =~ s/.*Почта:\s(.*)<\/div>/$1/", получаю вырезку до последнего div. Как до первого оно делается? Помню, что на эту тему тут пробегал научный труд, но не нашёл того письма. With best regards, Evgeny
From: Dmitry Ivanov 2:5023/24.3209 10 Feb 2021 09:13 +0200
To: Evgeny Chevtaev 2:5010/275
Subject: __ВФЕФ__
Здравствуйте, Evgeny. Вы писали 4 февраля 2021 г., 11:08:58: > Так подойдёт? Тоже вариант, спасибо -- С уважением, Dmitry
From: Dmitry Ivanov 2:5023/24.3209 04 Feb 2021 10:07 +0200
To: Dmitry Ivanov 2:5023/24.3209
Subject: __ВФЕФ__
Здравствуйте, Dmitry. Вы писали 4 февраля 2021 г., 7:24:41: > Здравствуйте, All. > Глупый вопрос про __DATA__ > Есть очень условный скрипт > my $i; > for $i ( 1 .. 3 ) { > while () { > print "$i+$_\n"; > } > } > __DATA__ > 4 > 5 > 6 > так вот на первой итерации ($i = 1 DATA "заканчивается". Как > начатьчитать ее сначала? > Я много гуглил, нагуглилЮ что специальный файловый дескриптор. > Пробовал его закрывать close и через seek гонять. Hе получается. > Подскажите, плз, что делать Вопрос снимается my $data_start = tell DATA; # save the position print while (); seek DATA, $data_start, 0; # reposition the filehandle right past __DATA__ print while (); -- С уважением, Dmitry
From: Eugene Grosbein grosbein.net 04 Feb 2021 12:24 +0200
To: Dmitry Ivanov 2:5023/24.3209
Subject: __ВФЕФ__
04 февр. 2021, четверг, в 04:24 NOVT, Dmitry Ivanov написал(а): DI> Глупый вопрос про __DATA__ DI> Есть очень условный скрипт DI> my $i; DI> for $i ( 1 .. 3 ) { DI> while () { DI> print "$i+$_\n"; DI> } DI> } DI> __DATA__ DI> 4 DI> 5 DI> 6 DI> так вот на первой итерации ($i = 1 DATA "заканчивается". Как DI> начатьчитать ее сначала? DI> Я много гуглил, нагуглилЮ что специальный файловый дескриптор. DI> Пробовал его закрывать close и через seek гонять. Hе получается. Hужно понять, что в __DATA__ нет никакой магии: встретив в первый раз обращение к , интерпретатор perl, уже имея открытый исходник скрипта, находит в нём __DATA__ и делает seek на начало следующей строки, так чтобы любая работа с происходила ровно так же, как с любым другим файлом. Поэтому тебе надо действовать, как с любым другим файлом, в лоб: my $offset = tell(DATA); # запоминаем исходное смещение for $i ( 1 .. 3 ) { seek(DATA, $offset, 0); # переустанавливаем указатель while () { # читаем с нужной позиции print "$i+$_\n"; } } __DATA__ Eugene -- И друзей успокоив и ближних любя, Мы на роли героев вводили себя.
From: Evgeny Chevtaev 2:5010/275 04 Feb 2021 05:08 +0200
To: Dmitry Ivanov 2:5023/24.3209
Subject: __ВФЕФ__
Hi Dmitry! Thursday February 04 2021 04:24, Dmitry Ivanov wrote to All: DI> Глупый вопрос про __DATA__ DI> Есть очень условный скрипт DI> my $i; DI> for $i ( 1 .. 3 ) { DI> while () { DI> print "$i+$_\n"; DI> } DI> } DI> __DATA__ DI> 4 DI> 5 DI> 6 DI> так вот на первой итерации ($i = 1 DATA "заканчивается". Как DI> начатьчитать ее сначала? my @data = ; for my $i ( 1 .. 3 ) { foreach (@data) { print "$i+$_\n"; } } __DATA__ 4 5 6 Так подойдёт? With best regards, Evgeny