у меня не воспроизвелись ваши проблемы. (я немного нормализовал запись, что бы глаза не резало)
http://3v4l[dot]org/B0ial#v430
PHP:
скопировать код в буфер обмена
$value = '<iframe src="https://www.google.com/maps/embed?pb=!1m10!1m8!1m3!1d2667.0525139773754!2d38.027218326585825!3d48.05132379575402!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sru!2s!4v1397237756729" width="600" height="450" frameborder="0" style="border:0"></iframe>'; $patterniframe = '/.\w.+(?:google\.com.+?|adobe\.com.+?|videohive\.net.+?)/U'; $result = preg_match($patterniframe, $value, $resultiframe); echo $resultiframe[0]; //<iframe src="https://www.google.com/maps/embed?pb=!1m10!1m8!1m3!1d2667.0525139773754!2d38.027218326585825!3d48.05132379575402!3m2!1i1024!2i768!4f13.1!5e0!3m2!1sru!2s!4v1397237756729" width="600" height="450" frameborder="0" style="border:0"></iframe>
что значит, проблема не в регулярках(естественно ведь нету никакого реплейса), а в выводе где вы смотрите.
Например, шаблонизатор видит что передается длинная-неразрывная строка.
P.S. изменил немного ваш код, потому что он не валидный.
P.S.S. слейте var_dump в файл непосредственно той функции которая делает ретурн, и покажите с помощью каких спецсимволов появляются пробелы (\n;\r\n; <br>)(Отредактировано автором: 14 Апреля, 2014 - 10:23:01)
|