Скрипт бегает по строкам в файле, если находит нужную строку заменяет данные в строке
| Код | for(;$i < $len; $i++) { if($str[$i] =~ /$n_field[$n]/) { $str[$i] =~ /<.*?>(\d+)<\/.*?>/; $str[$i] =~ s/(<.*?>)(\d+)(<\/.*?>)/$1$wrong_ip[$w]$3/; print $fout $str[$i]; $i++; } print $fout $str[$i]; }
|
Однако скрипт не очень работает. Строка остается неизменной.
Писал аналогичный скрипт, там все работает
| Код | while ($i < $count) { if ($str[$i] =~ /$ff/g) { $str[$i] =~ /<.*?>(\d+)<\/.*?>/; $max = $1 + 1; $max = $1 + 7 if($ff eq "Primary_mask" || $ff eq "Sup_mask" || $ff eq "RTP_mask" || $ff eq "Amount_of_channels"); $str[$i] =~ s/(<.*?>)(\d+)(<\/.*?>)/$1$max$3/; print $fout $str[$i]; $i++; } print $fout $str[$i]; $i++; }
|
|