2015-01-06 3 views
0

Затем я пытаюсь извлечь шестнадцатеричный код между тегами с preg_match_all функции у меня есть некоторые проблемы с использованием регулярных выраженийPregmatch все многострочное с новой строкой

#<\b(html|body)\b[^>]*>(.*?)</\b(html|body)\b>#is 

работы, извлечь все строки, но без новых simbols линии? поэтому после преобразования HEX2BIN я получил нечитаемые ЧАСТИ

#<\b(html|body)\b[^>]*>(.*?)</\b(html|body)\b>#im 

работу, но извлечь только отдельные строки, не извлекать строки содержит новую линию

Так как извлечь шестнадцатеричный код между тегами, включая все символы.

+1

[Не анализировать HTML с помощью REGEX] (http://stackoverflow.com/a/1732454/1519058), используйте вместо этого [парсер DOM] (http://stackoverflow.com/a/3577662/1519058) ... – Enissay

+0

Не могли бы вы объяснить, что вы имеете в виду: 'но извлекать только строки одной строки, содержащие новую строку, не извлекать'? – Toto

ответ

0

Чтобы соответствовать гекс вы можете использовать:

(?:0x|\$)?[0-9a-f]{5,10}h? 

Это регулярное выражение соответствует шестнадцатеричный код от мин 5 до макс 10 символов.