#!/usr/bin/perl # Простая замена тегов в XML # М.Ю.З., 29.09.2004 # Программа берёт 2 параметра: имена входного и выходного файлов # $ifname = $ARGV[0]; # $ofname = $ARGV[1]; $ifname = "228_NTC.xml"; $ofname = "228_NTC_2.xml"; open(I_F, "< $ifname") or die "не смогла открыть файл $ifname: $!"; open(O_F, "> $ofname") or die "не смогла открыть файл $ofname: $!"; @in=; $iscomponent = 0; foreach (@in){ if (m/(\s*)\n/) { $TagBegin = "$1\n/) { $TagBegin = "$1\n/) { $TagBegin = "$1\n/) { $TagBegin = "$1(.*)<\/Name>\n/) { $name=$2; $name=~s/\"/"/g; print O_F "$TagBegin name=\"$name\">\n"; } elsif (m/(\s*)<\/Program(.*)>\n/) { if ($iscomponent) { print O_F "$1\n"; } else { print O_F "$1\n"; }; $iscomponent = 0; } else{ print O_F $_; }; }; # конец входного файла close(I_F); close(O_F);