2011-12-24 14 views
5

Tengo una lista de números entre corchetes, y necesito agregar palabras antes y después de los números exactos (es decir, mantener los mismos números). Uso Notepad ++ para reemplazar, pero si tiene una solución con otro programa, por favor asesorar.expresión regular para agregar caracteres antes y después de los números

Ejemplo:

text [121] othertext 
moretext [16] othertextmore 
andtext [5940] othertextplus 

resultado:

text xxxxxxxxx [121] xxxxxxxxx othertext 
moretext xxxxxxxxx [16] xxxxxxxxx othertextmore 
andtext xxxxxxxxx [5940] xxxxxxxxx othertextplus 

Los números son, por supuesto \d+ pero quiero decir que para mantener el mismo número cuando se buscan.

+0

Mientras que la expresión regular alféizar siendo el mismo, el código va a cambiar: en qué idioma? –

Respuesta

16

Encuentra Qué: (\[\d+])

Reemplazar con: xxxxxxxxx \1 xxxxxxxxx

enter image description here

+0

perfecto .. gracias :) – Mike

+1

@Mike - Puede aceptar como respuesta haciendo clic en la marca de la izquierda. – manojlds

+0

No hay necesidad de paréntesis si va a utilizar la coincidencia completa de todos modos, reemplace con 'xxxxxx \ 0 xxxxxx'. –

2

C#:

line=Regex.Replace(line,@"([^\[])(\[\d+\])(.*)","$1xxxxxxxxx $2 xxxxxxxxx$3"); 

Otros idiomas análogos

0

Expresión regular:

Find regex = \[\d+\] 
Replace regex = xxxxxxxxx$&xxxxxxxxx 


Consulte: regexr

Cuestiones relacionadas