php preg_match два примера - PullRequest
       6

php preg_match два примера

0 голосов
/ 21 октября 2009

Мне нужно preg_match для

src="http://      "

где пробел после // - это остальная часть URL, заканчивающаяся на ". Моя адаптированная версия не работает:

preg_match('#src="(http://[^"]+)#', $data, $match); 

И я также изо всех сил пытаюсь получить текст, который начинается с> и заканчивается ЛЮБОЙ полной остановкой. или восклицательный знак! или вопросительный знак? Я понятия не имею, как это сделать. Пример текста, для которого я хочу использовать preg_match:

 blahblahblah>Hello world this is what I want.

Я надеюсь, что добрый гуру preg_match может сказать мне ответ и сэкономить мне часы начесывания головы.

Спасибо за чтение.

Ответы [ 3 ]

4 голосов
/ 21 октября 2009

Что касается URL:

preg_match('#src="(.*?)"#', $data, $match);

и для второго случая используйте />(.*?)(\.|!|\?)/

0 голосов
/ 21 октября 2009

Кажется, что вы хотите проанализировать документ или строку, которая соответствует HTML, DOM, XML или чему-то похожему. Используйте XPath и выполните синтаксический анализ тега и дайте ему вернуть src Attribute, это избавит вас от многих проблем и вы сможете забыть о регулярных выражениях.

Пример: НАЖМИТЕ МЕНЯ

0 голосов
/ 21 октября 2009

(. *?) "Будет жадно сопоставлять любой символ до тех пор, пока он не увидит двойную кавычку конца

...