Reemplazar Solo 1 Grupo con StringRegExpReplace
Publicado: 10 Jun 2013, 18:47
Nadie dijo que fuese fácil las expresiones regulares, Pero una cosa que pensé que era sencilla a mi me esta costando todo el día.
Ya he leído los post donde se hablar de las expresiones regulares del foro y no consigo dar con al solución.
Caso practico:
Grupo1|grupo2|grupo3|grupo4
Explicación de lo que quiero hacer.
$String='19|salud|58|29|economia'
Cambia("GRUPO3","POR ESTO")
Esto daria como resultado
$String='19|salud|POR ESTO|29|economia'
Es decir. Poder cambiar Grupos mediante un delimitador que en este caso es "|" pero sin saber que datos habrá en cada grupo.
Cada grupo tendrá datos diferentes los cuales no se pueden saber. Es decir. Esto no sirve.
Si no que lo que tengo que conseguir es decir. Quiero cambiar el Grupo3 y como referencia solo puedo tener el Delimitador que en este caso es " | " pero podría ser cualquier otro. En cada Grupo tenemos Números y casi cualquier tipo de carácter.
He intentado cosas:
Pero no paso de hay. Tengo que poder cambiar cada grupo a elección. Grupo 1 , 2 ,3 ....
Espero que me podáis ayudar como siempre. Gracias.
Ya he leído los post donde se hablar de las expresiones regulares del foro y no consigo dar con al solución.
Caso practico:
Grupo1|grupo2|grupo3|grupo4
Explicación de lo que quiero hacer.
$String='19|salud|58|29|economia'
Cambia("GRUPO3","POR ESTO")
Esto daria como resultado
$String='19|salud|POR ESTO|29|economia'
Es decir. Poder cambiar Grupos mediante un delimitador que en este caso es "|" pero sin saber que datos habrá en cada grupo.
Cada grupo tendrá datos diferentes los cuales no se pueden saber. Es decir. Esto no sirve.
Código: Seleccionar todo
StringRegExpReplace("Grupo1|grupo2|grupo3|grupo4", "Grupo1|(.*?)|grupo3|grupo4", " GrupoNuevo")
He intentado cosas:
Código: Seleccionar todo
$sMsg3=StringRegExpReplace("uno dos tres", "(\S){4}", "cuatro")
Espero que me podáis ayudar como siempre. Gracias.