Я пытаюсь написать программу на Perl, которая читает строки из текстового файла, и для каждой строки извлекает первое «слово» из строки и выполняет различные действия в зависимости от возвращаемой строки.
Основной цикл выглядит так:
while(<AXM60FILE>) {
$inputline = $_;
($start) = ($inputline =~ /\A(.*?) /);
perform something, based on the value of string in $start
}
Входной файл на самом деле является файлом параметров, в котором имя_параметра и значение_параметра разделены двоеточием (":"). До или после двоеточия могут быть пробелы или символы табуляции.
Итак, файл выглядит (например) следующим образом:
param1: xxxxxxxxxxxx
param2: xxxxxxxxxxxxx
param3: xxxxxxxxxxxxxxxxx
param4: XXXXXXXXXXXXX
То, что "($ start) = ($ inputline = ~ /\A(.*?) /);" работает нормально для примера "param2" и примера "param3", где 1-е слово оканчивается пробелом / пробелом, но как я могу обработать ситуации "param1" и "param4", где имя_параметра сразу следует двоеточие
Кроме того, что делать, если «пробел» представляет собой вкладку или вкладки вместо пробела / пробела?
Спасибо,
Jim