From: |
Dmitry Ivanov 2:5023/24.3209 |
04 Feb 2021 04:24 +0200 |
To: |
All |
|
Subject: |
__ВФЕФ__
|
Здравствуйте, All.
Глупый вопрос про __DATA__
Есть очень условный скрипт
my $i;
for $i ( 1 .. 3 ) {
while () {
print "$i+$_\n";
}
}
__DATA__
4
5
6
так вот на первой итерации ($i = 1 DATA "заканчивается". Как
начатьчитать ее сначала?
Я много гуглил, нагуглилЮ что специальный файловый дескриптор.
Пробовал его закрывать close и через seek гонять. Hе получается.
Подскажите, плз, что делать
--
С уважением,
Dmitry
From: |
Eugene Grosbein grosbein.net |
22 Oct 2020 11:12 +0300 |
To: |
Stas Mishchenkov 2:460/5858 |
|
Subject: |
мозги сломал
|
17 окт. 2020, суббота, в 11:15 NOVT, Stas Mishchenkov написал(а):
SM> use locale;
SM> # [...]
SM> undef $fromchrs;
SM> if ( $Text =~ /\001CHRS\:[ ]*([^ ]+)[ ]+\d+/ ) {
SM> $fromchrs = lc($1);
SM> writelog("Charset found: \'$fromchrs\'.");
SM> } else {
SM> $fromchrs = 'cp866';
SM> writelog('Warning: No @CHRS kludge. Using default
SM> }
Это не тот код, который реально работает. Этот содержит ошибки и
даже не запустится.
Кроме того, undef лишний. Отдельный пробел незачем забирать в квадратные
скобки.
Двоеточие незачем экранировать. Hе отмечено, что матчинг должен идти
с начала строки. Попробуй так:
if ($Text =~ /^.CHRS:\s*([^ ]+)\s+\d+/) {
Eugene
From: |
Gennadij Pastuhov 2:5036/26 |
18 Oct 2020 15:44 +0300 |
To: |
Stas Mishchenkov 2:460/5858 |
|
Subject: |
мозги сломал
|
Рад всех приветствовать! А особенно - Stas!
Воскресенье октября 18 20 10:57 Stas Mishchenkov писал к Gennadij Pastuhov:
SM>>> use locale;
SM>>> # [...]
SM>>> undef $fromchrs;
SM>>> if ( $Text =~ /\001CHRS\:[ ]*([^ ]+)[ ]+\d+/ ) {
GP>> Может, тут лучше так: \s* \s+
SM> Можно и так, но рекэксп-то срабатывает, только в $1 попадает то, чего
SM> в тексте вообще нет.
Ты уеврен, что он срабатывает? Может, ветка else? Давай сюда построчные логи.
... Jonny wanna live
From: |
Stas Mishchenkov 2:460/5858 |
18 Oct 2020 11:01 +0300 |
To: |
Alexey Korotkov 2:455/19.4 |
|
Subject: |
мозги сломал
|
Hi, Alexey!
17 окт 20 22:50, Alexey Korotkov -> Stas Mishchenkov:
SM>> Текст письма содержит кладж "@CHRS: UTF-8 4", но $1 и $fromchrs
SM>> устанавливается CP866. Другие кладжи рспознает, правда, я не проверял,
SM>> все ли. При чем, в данном конкретном случае текст вообще не содержит
SM>> строки CP866. В чем прикол, откуда оно может браться?
AK> А ты уверен что у тебя в строке фактические разделители - проблелы? (см.
AK> в hex-виде)
Посмотрю, конечно, но почему тогда рекэксп срабатывает? Вопрос именн в том, что
регэксп возвращает тру, а в $1 то, чего в тексте вообще нет. Если $1 остается
установлен с прошлого срабатывания, то куда девается значение из скобок?
Have nice nights.
Stas Mishchenkov.
From: |
Stas Mishchenkov 2:460/5858 |
18 Oct 2020 10:57 +0300 |
To: |
Gennadij Pastuhov 2:5036/26 |
|
Subject: |
мозги сломал
|
Hi, Gennadij!
17 окт 20 16:50, Gennadij Pastuhov -> Stas Mishchenkov:
SM>> use locale;
SM>> # [...]
SM>> undef $fromchrs;
SM>> if ( $Text =~ /\001CHRS\:[ ]*([^ ]+)[ ]+\d+/ ) {
GP> Может, тут лучше так: \s* \s+
Можно и так, но рекэксп-то срабатывает, только в $1 попадает то, чего в тексте
вообще нет.
Have nice nights.
Stas Mishchenkov.
From: |
Alexey Korotkov 2:455/19.4 |
17 Oct 2020 22:50 +0300 |
To: |
Stas Mishchenkov 2:460/5858 |
|
Subject: |
мозги сломал
|
Здpавствуй, Stas!
Суббота 17 Октября 2020 11:15, ты писал(а) All, в сообщении по ссылке
area://ru.perl?msgid=2:460/5858+5f8aab78:
SM> Текст письма содержит кладж "@CHRS: UTF-8 4", но $1 и $fromchrs
SM> устанавливается CP866. Другие кладжи рспознает, правда, я не проверял,
SM> все ли. При чем, в данном конкретном случае текст вообще не содержит
SM> строки CP866. В чем прикол, откуда оно может браться?
А ты уверен что у тебя в строке фактические разделители - проблелы? (см. в
hex-виде)
С уважением - Alexey
From: |
Gennadij Pastuhov 2:5036/26 |
17 Oct 2020 16:50 +0300 |
To: |
Stas Mishchenkov 2:460/5858 |
|
Subject: |
мозги сломал
|
Рад всех приветствовать! А особенно - Stas!
Суббота октября 17 20 11:15 Stas Mishchenkov писал к All:
SM> use locale;
SM> # [...]
SM> undef $fromchrs;
SM> if ( $Text =~ /\001CHRS\:[ ]*([^ ]+)[ ]+\d+/ ) {
Может, тут лучше так: \s* \s+
SM> $fromchrs = lc($1);
SM> writelog("Charset found: \'$fromchrs\'.");
SM> } else {
SM> $fromchrs = 'cp866';
SM> writelog('Warning: No @CHRS kludge. Using default
SM> }
SM> Текст письма содержит кладж "@CHRS: UTF-8 4", но $1 и $fromchrs
SM> устанавливается CP866. Другие кладжи рспознает, правда, я не проверял,
SM> все ли. При чем, в данном конкретном случае текст вообще не содержит
SM> строки CP866. В чем прикол, откуда оно может браться?
Что говорит regex101 ? ИМХО, дело в символе \001
... Jonny wanna live
From: |
Stas Mishchenkov 2:460/5858 |
17 Oct 2020 11:15 +0300 |
To: |
All |
|
Subject: |
мозги сломал
|
Hi, All!
use locale;
# [...]
undef $fromchrs;
if ( $Text =~ /\001CHRS\:[ ]*([^ ]+)[ ]+\d+/ ) {
$fromchrs = lc($1);
writelog("Charset found: \'$fromchrs\'.");
} else {
$fromchrs = 'cp866';
writelog('Warning: No @CHRS kludge. Using default
}
Текст письма содержит кладж "@CHRS: UTF-8 4", но $1 и $fromchrs устанавливается
CP866. Другие кладжи рспознает, правда, я не проверял, все ли. При чем, в данном
конкретном случае текст вообще не содержит строки CP866.
В чем прикол, откуда оно может браться?
Have nice nights.
Stas Mishchenkov.
From: |
Stas Mishchenkov 2:460/5858 |
01 Sep 2020 23:19 +0300 |
To: |
Ruslan Suleimanov 2:467/888 |
|
Subject: |
парсер эхотага
|
Hi, Ruslan!
31 авг 20 11:28, Ruslan Suleimanov -> Eugene Grosbein:
RS>>> Интересует есть ли какие-либо готовые решения на Perl, для
RS>>> открытия squid, jam файла и чтения ?
EG>> Как обычно, ищи на CPAN. Hапример,
EG>> https://metacpan.org/release/FTN-JAM
RS> Спасибо, отличнейший модуль ! :)
Есть свежее версия и менее глючная.
Have nice nights.
Stas Mishchenkov.
From: |
Ruslan Suleimanov 2:467/888 |
31 Aug 2020 11:28 +0300 |
To: |
Eugene Grosbein grosbein.net |
|
Subject: |
парсер эхотага
|
Привет, Eugene!
Ответ на сообщение Eugene Grosbein (2:5006/1) к Ruslan Suleimanov,
написанное 27 авг 20 в 04:26:
EG> 26 авг. 2020, среда, в 23:36 NOVT, Ruslan Suleimanov написал(а):
RS>> Интересует есть ли какие-либо готовые решения на Perl, для
RS>> открытия squid, jam файла и чтения ?
EG> Как обычно, ищи на CPAN. Hапример,
EG> https://metacpan.org/release/FTN-JAM
Спасибо, отличнейший модуль ! :)
WBR, Ruslan Suleimanov.
Telegram: @rsuleimanov
ARCHIVE: https://mirror1.fido.odessa.ua/