Tengo una línea de texto almacenada en una variable y quiero realizar una sustitución global en dicha línea pero de forma que solo se realice sobre las palabras que cumplen un cierto patrón (es decir, si la palabra tiene antes o después un espacio o un carácter no alfanumérico). El problema es que en la búsqueda sé delimitarle el patrón pero a la hora de sustituir no sé cómo especificarle que el punto o el carácter alfanumérico se mantenga.
Os pongo la expresión de ejemplo para que quede algo más claro:
Using perl Syntax Highlighting
- my $substituto=$hash{$palabra};
- $lineaAux =~ s/( |\.)\Q$palabra\E( |\.)/( |\.)$substituto( |\.)/gi;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Así me lo sustituye por el literal ( |\.) en vez de la ocurrencia que tuvo al principio... Supongo que será medio sencillo pero no consigo encontrar nada al respecto (¿quizás usando $1 o variables similares de Perl?).
Muchas gracias por adelantado, un saludo a todos,
Sebastián