Me gustaría usar sed
o perl
reemplazar todas las apariciones de una palabra que no tiene una palabra determinada en frente.
Por ejemplo, tengo un archivo de texto que contiene una trama de una película y quiero reemplazar todas las apariciones del apellido de un personaje con su nombre, pero solo si su nombre no aparece inmediatamente antes de su apellido.
El texto de muestra podría verse así:
John Smith and Jane Johnson talk about Smith's car.
Quiero que se vea así:
John Smith and Jane Johnson talk about John's car.
Si solo lo hago sed 's/Smith/John/' file
, entonces tendría:
John John and Jane Johnson talk about John's car.
El primer nombre que viene antes del apellido siempre será el mismo. No tengo que lidiar con John Smith
y Frank Smith
. Solo necesito una forma de igualar Smith
que no tenga John
precedente.