У меня есть список имен пользователей и имен баз данных (см. Ниже). 39-я строка - «Образец AHernandez».Неожиданное поведение оператора модуля в Perl
Вот мой код сценария:
use strict;
use warnings;
my $i = 0;
my $n = 13;
while (<>) {
s/Sample /Sample Basic/ unless ++$i % $n;
print;
}
Вот как я звоню сценарий: Perl test1.txt> Test3.txt.
Вот и нечетная часть. 39-я строка, или 4-й экземпляр, изменяется кодом. Sample
становится Sample Basic
. Затем ожидается ожидаемое поведение каждого 13-го экземпляра. Почему 4-й экземпляр «Образца» меняется, а затем каждый 13-й после этого?
админ
AEluf Bane
AEluf PoiznIvy
AEluf MrFreeze
AEluf демо
AEluf Образец
AEluf Sample_U
AEluf Samppart
AEluf Sampeast
AEluf ASOsamp
AEluf PFPSamp
AEluf SampApp
AGodfrey Bane
AGodfrey PoiznIvy
AGodfrey MrFreeze
AGodfrey демо
AGodfrey Образец
AGodfrey Sample_U
AGodfrey Samppart
AGodfrey Sampeast
AGodfrey ASOsamp
AGodfrey PFPSamp
AGodfrey SampApp
Agold Bane
Agold PoiznIvy
Agold MrFreeze
Agold демо
Agold Образец
Agold Sample_U
Agold Samppart
Agold Sampeast
Agold ASOsamp
Agold PFPSamp
Agold SampApp
AHernandez Bane
AHernandez PoiznIvy
AHernandez MrFreeze
AHernandez Демо-версия
AHernandez Sample Basic
AHernandez Sample_U
AHernandez Samppart
AHernandez Sampeast
AHernandez ASOsamp
AHernandez PFPSamp
AHernandez SampApp
О, я вижу. Итак, как мне получить каждый 13-й экземпляр строки «Образец» вместо каждых 13 строк? Спасибо! –
@DrewRush проверить обновление –