Code: /<\?.*\?>/s Работает неправильно. Надо, чтобы из текста вида Code: <? TEST ?> NO <? TEST2 ?> он выбирал Code: <? TEST ?> и <? TEST ?> А он выбирает ВЕСЬ текст, вместе со словом NO. Хелп.
Есть html код PHP: <li><div class="structHeader"><a href="javascript://" id="plus" onclick="if($(this).html()=='++++') $(this).html('----'); else $(this).html('++++'); toggle('struct1771203'); " >++++</a> Регион</div><ul class="struct" id="struct1771203" style="display:none;"><li><a href="/novator/joomla/index.php?option=com_comprofiler&view=userProfile&user=141">Клюкин Александр Владимирович</a> - Продавец - консультант</li></ul></li></ul></li><li> Помогите пожалуйста написать регулярку что бы отсечь все незакрытые теги не тронув при этом закрытые .
Доброго, Помогите вспомнить основы. Регулярные выражения я разберу, есть откуда почитать. Суть в другом, в самом принципе работы. Например, когда мы преобразовываем ссылку HTML: www.yoursite.com/script.php?product=123 к виду HTML: www.yoursite.com/cat/product/123/ мы используем выражение PHP: RewriteRule cat/(.*)/(.*)/$ /script.php?$1=$2 Правильно ли понимаю, что изначально мы смотрим и пишем /script.php?$1=$2, то есть вторую часть, изначальную свою ссылку. Затем мы прописываем первую часть cat/(.*)/(.*)/$ и каждая переменная (в нашем случае $1, $2) (последовательно, слева направо?) идет прописываться в каждую круглую скобку? Вот, и какую роль тогда здесь играют регулярные выражения?
Благодарю за ответ. Странно вообще-то получается. Я хочу site.com/cat.php?A1=B1¶ms=777 с помощью RewriteRule переименовать в site.com/catalog/firma/obelisk/index.html (просто как пример), а вы говорите что RewriteRule делает абсолютно противоположную задачу. Верно? Как достигнуть моей цели?
Я понял задом-наперед. Хорошо. Как мне можно добиться такого результата Сейчас ссылка index.php?action=company&lang=ru Мне надо /ru/company.html
У меня есть куча select'ов: HTML: <select id='w1'> option value='1' >1</option> option value='2' >2</option> option value='3' >3</option> </select> <select id='w2'> option value='1' >1</option> option value='2' >2</option> option value='3' >3</option> </select> <select id='w3'> option value='1' >1</option> option value='2' >2</option> option value='3' >3</option> </select> Мне нужно получить все option у select'a с id=w2. Это можно сделать одной регуляркой?
Как сделать редирект с любго поддомена на страницы сайта? к примеру, с 1234.site.ru нa site.ru/1234 при этом поддомены в панельке создавать по условию нельзя и поддомен может быть любым
Задача: составить регулярку. Условие, максимально 4 параметра 10D 10H 10M 10S, но все 4 никогда не встрчаются, обычно не более двух: а) на пыхе с использование preg_match_all б) парсим различные результаты, варианты входных данных: 1) 6D 6H 2) 9H 5M 3) 1D 10M 4) 10M 14S Сами параметры могут быть любыми, от 0 до 59. Необходимо несмотря из входных данных заполнить массив: [0] => Array ( [0] => 6 [1] => '' [2] => 1 [3] => '' [1] => Array [0] => 6 [1] => 9 [2] => '' [3] => '' [2] => Array [0] => '' [1] => 5 [2] => 10 [3] => 10 [3] => Array [0] => '' [1] => '' [2] => '' [3] => 14 1й подмассив - D (дни), 2й подмассив - H (часы), 3й подмассив - M (минуты), 4й подмассив - S (секунды) Есть идеи?
<? $text="<select id='w2'> <option value='1'>1</option> <option value='2'>2</option> <option value='3'>3</option>"; preg_match("/<select id='w2'>\r\n<option value='([0-9])'>(.*)<\/option>/s", $text, $m); preg_match("/<select id='w2'>\r\n(<option value='([0-9])'>(.*)<\/option>)/s", $text, $s); echo "сначала $s[1]<br> вконце $m[2]"; ?> пробуй) З.Ы. Да,я извращенец
Получаю от сервера ответ в виде неполного XML (без заголовка <?xml ... ?>. Нужно распарсить таким образом: содержимое <input_img> в <img src="..." >, а <description> в <b>...</b> и вывести по порядку, как в XML'е. Как лучше сделать? Дописать заголовок в начало ( $request = '<?xml version="1.0" encoding="UTF-8"?>'.curl_exec($ch); ) и использовать xml_parser или нечего не записывать и регулярками пройтись? Помогите распарсить. Code: <?xml version="1.0" encoding="UTF-8"?> <math> <variant> <input_img>dss.localhost.ru/masima/Render.app.php/execute?id=2651267</input_img> <solve> <description>5</description> <answer_img>dss.localhost.ru/masima/Render.app.php/execute?id=1694028</answer_img> </solve> <solve> <description>5</description><answer_img>dss.localhost.ru/masima/Render.app.php/execute?id=1694028</answer_img></solve> </variant> </math>
Я тоже не совсем догоняю, но попробую предложить: PHP: <?php $result = '<?xml version="1.0" encoding="UTF-8"?> <math> <variant> <input_img>dss.localhost.ru/masima/Render.app.php/execute?id=2651267</input_img> <solve> <description>5</description> <answer_img>dss.localhost.ru/masima/Render.app.php/execute?id=1694028</answer_img> </solve> <solve> <description>5</description><answer_img>dss.localhost.ru/masima/Render.app.php/execute?id=1694028</answer_img></solve> </variant> </math>'; $result = preg_replace('#<input_img>(.*?)<\/input_img>#', '<img src="\\1" >', $result); $result = preg_replace('#<description>(.*?)<\/description>#', '<b>\\1</b>', $result); echo $result; ?>
А можно сделать так, чтобы один массив заполнялся согласно одному рег. выражению: <description>(.*?)<\/description>|<input_img>(.*?)<\/input_img> ? preg_match_all вроде, но там многомерный массив получается и повторяются результаты