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