un ejemplo que no funcionaría sería este:
Código PHP:
preg_match("#<li><strong>Dónde está:</strong>(.*?)</a></li>"#,$respuesta,$where);
| |||
problema con tildes en expresiones regulares Hola a todos. He constatado que cada vez que hay algún acento en una letra dentro de una expresión regular, me hace que falle el preg_match. Ni siquiera lo consigo escapando las letras con tildes. Alguien tiene una solución?? un ejemplo que no funcionaría sería este: Código PHP: |
| |||
Respuesta: problema con tildes en expresiones regulares Hola amigo que tal, veras sucede lo siguiente: _______________________________ 1.- Que sucede cuando imprimes en el navegador una cadena letras acentuadas?
Código PHP:
Ver original Que es lo que puedes ver en el navegador? Son las mismas vocales acentuadas que has colocado en el echo? Entonces tu expresión regular esta intentando comparar una cadena de texto cuya entrada es de vocales acentuadas pero su salida es de otros símbolos, esta es una de las 2 razones por la que tu expresión regular no funciona. Solución: Podrías utilizar utf8_decode antes de comparar con preg_match. --------------------------------------- 2.- La otra razón, es en la expresión regular. Escapar las vocales acentuadas no es del todo bueno hay otra solución un poco más copada. Utiliza la expresión hexadecimal de las vocales acentuadas. á: \xe1 é: \xe9 í: \xed ó: \xf3 ú: \xfa Verifícalas en alguna tabla puede que ya no me acuerde bien y me haya equivocado. En fin. Saludos.
__________________ Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +. |
Etiquetas: |