Pregunta
Necesito preg_match para
src="http:// "
donde el espacio en blanco que sigue a // es el resto de la url que termina con " ;. Mi adaptado no parece funcionar:
preg_match('#src="(http://[^"]+)#', $data, $match);
Y también estoy luchando por obtener texto que comience con > y termina con CUALQUIER punto final. o un signo de exclamación! o un signo de interrogación? No tengo idea de cómo hacer esto. Un ejemplo del texto para el que quiero hacer un preg_match es:
blahblahblah>Hello world this is what I want.
Espero que un gurú preg_match amable pueda decirme la respuesta y ahorrarme horas de rascar la cabeza.
Gracias por leer.
Solución
En cuanto a la URL:
preg_match('#src="(.*?)"#', $data, $match);
y para el segundo caso, use />(.*?)(\.|!|\?)/
Otros consejos
(. *?) " coincidirá con cualquier personaje con avidez hasta el momento en que vea el final de la comilla doble
Parece que desea analizar un documento o cadena que sigue una estructura similar a HTML, DOM, XML o algo similar.
Use XPath
y analice la etiqueta y deje que devuelva el src
Attribute
, esto le ahorrará muchos problemas y puede olvidarse de las expresiones regulares.
Ejemplo: HAGA CLIC EN