Stack Overflow en español Asked by Carlos Valdes Web on August 27, 2021
¿cómo están?
Estoy trabajando con preg_replace para sustituir cadenas, pero estoy atorado con una expresión regular. Yo tengo lo siguiente:
$texto = "Mi carro es dorado como el <b>carro</b> de enfrente";
preg_replace("/bcarro[^<]b/", "auto",$texto);
Lo que quiero es que se reemplace solo la primera palabra carro, pero cuando tenga las etiquetas no se reemplace la palabra.
El texto debería quedar así.
$texto = "Mi auto es dorado como el <b>carro</b> de enfrente";
Pero queda así, se come el espacio, debido a que la expresión regular dice que acepte todo excepto cuando tenga el símbolo < y es por eso que está borrando el espacio, pero no logro hacer la expresión regular, alguien tiene una idea?
$texto = "Mi autoes dorado como el <b>carro</b> de enfrente";
Puedes usar 'negative lookahead' (no se si hay una palabra en español):
/bcarro(?!<)b/
Answered by Glorfindel on August 27, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP