Допустим, у нас есть "ab c {{1.1 2.2}}", встречающийся несколько раз в файле, и я хочу изменить его на "xyz {{2.2 4.4}}", который в основном:
- Измените ab c на xyz.
- И умножьте плавающие значения на 2, которые появляются в фигурных скобках (всегда перед ключевым словом ab c).
abc {{1.1 2.2}} ----------> xyz {{2.2 4.4}}
Это изменение должно быть сделано для всех экземпляров файла. Вот код, который я попробовал, но смог заменить только ab c на xyz и не смог понять, как выполнять операции, извлекая эти плавающие значения.
#!/usr/bin/perl -w
use strict;
open(FILE, "</tmp/yourfile.txt") || die "File not found";
my @lines = <FILE>;
close(FILE);
foreach(@lines) {
$_ =~ s/abc/xyz/g;
}
open(FILE, ">/tmp/yourfile.txt") || die "File not found";
print FILE @lines;
close(FILE);
Любая помощь очень полезна оценили.