Это должно быть очевидно, но я просто не вижу этого.
У меня есть документы, содержащие тысячи записей, как показано ниже:
Row:1 DATA:
[0]37755442
[1]DDG00000010
[2]FALLS
[3]IMAGE
[4]Defect
[5]3
[6]CLOSED
Мне удалосьотделить каждую запись, и теперь я пытаюсь разобрать каждое поле.
Я пытаюсь сопоставить пронумерованные заголовки, чтобы я мог извлечь данные, которые следуют за ними, но проблема в том, что мои совпадениятолько возвращая мне «1», когда им это удается, и ничего, если они этого не делают.Это происходит для любого совпадения, которое я пытаюсь применить.
Например, применяется к простому слову в каждой записи:
my($foo) = $record=~ /Defect/;
print STDOUT $foo;
выводит «1» для каждой записи, если оносодержит «Дефект» и ничего, если он содержит что-то еще.
В качестве альтернативы:
$record =~ /Defect/;
print STDOUT $1;
абсолютно ничего не печатает.
$record =~ s/Defect/Blefect/
заменит «Дефект» на «Blefect»"отлично, с другой стороны.
Я действительно смущен тем, почему отдача от моих спичек такая странная.Любая помощь будет высоко ценится.