Я читаю каждую строку входного файла (IN) и печатаю строку, считанную в выходной файл (OUT), если строка начинается с одного из шаблонов, скажем «ab», «cd», «ef», "gh", "ij" и т. д. Напечатанная строка имеет форму "pattern: 100" или form "pattern: 100: 200". Мне нужно заменить «pattern» на «myPattern», то есть вывести текущую строку в FILE, но заменить весь текст до первого появления «:» на «myPattern». Каков наилучший способ сделать это?
В настоящее время у меня есть:
while ( <IN> )
{
print FILE if /^ab:|^bc:|^ef:|^gh:/;
}
Я не уверен, поможет ли замена substr, поскольку "pattern" может быть либо "ab", либо "cd", либо "ef", либо "gh" и т. Д.
Спасибо!
Bi