Я хотел бы использовать sed
или perl
заменить все вхождения слова, у которого нет определенного слова перед ним.
Например, у меня есть текстовый файл, который содержит сюжет фильма, и я хочу заменить все вхождения фамилии персонажа на его имя, но только в том случае, если его имя не сразу перед фамилией.
Пример текста может выглядеть так:
John Smith and Jane Johnson talk about Smith's car.
Я хочу, чтобы это выглядело так:
John Smith and Jane Johnson talk about John's car.
Если бы я просто сделал sed 's/Smith/John/' file
, то я бы:
John John and Jane Johnson talk about John's car.
Имя, которое стоит перед фамилией, всегда будет одинаковым. Мне не нужно иметь дело с John Smith
и Frank Smith
. Мне просто нужен способ сопоставления Smith
, который не имеет John
предшествующего ему.