$str = 'href="site.ru'; тут после = 3 варианта $re = 'foto.ru'; preg_replace("|href= и тут перебрать 3 вар|","href=$re",$str); тоже 3 вар
Я в PHP на уровне дилетанта знаю. А вот сишку прекрастно) Писал много известых софтин. Например http analyzer
Если я тебя правильно понял, то держи: PHP: $str1='href="текст'; $str2='href='; $str3='href="'; //$str4=''; //добавляй сколкьо хочешь проверок - все будет проверенно в цикле, нумеруй их как strN $url='site.ru'; $dst="\${1}$url"; for($i=1;$i<=3;$i++) { $s=str.$i; echo preg_replace("/(href=)([\"|\']+)(\w*)/",$dst,$$s)."<br>"; } Но учти, после href= идет либо " либо ' а потом текст Т.е. ты хочешь отловить все попадания " или ' сразу после = и перед текстом ссылки?) Кароч, хочешь инъект не пустить?
[Mысли в слух] Забавно, учитывая то, что твой возраст <= 16, а первая версия http analyzer увидела свет в 2004 году. Сколько тебе тогда было? 10? или 9? [/Mысли в слух]
во первых перебрать три варианта- это надо цикл организовывать во вторых чтоб что то перебиралось надо с переменной соединять, в третьих.....короче я тут ниодно правильное действие не увидел- сформулируй плиз четко задачу и получиш готовый код (так проще) только без этих переменных а на словах что сколько раз и как это должно делаться (авторизирование не тредуеться на сайте и т д) а так исправлять каждую ошибку- можно до утра
как я понял, ему надо ссылку заменить, а ссылка задаётся одним из трёх вариантов: href="index.htm" href='index.htm' href=index.htm но не обязательно, что index.htm...
Блин значит в этом топике только Kusto тупой и ничего недогоняет, если принять за истинну первый пост ТС на что заменит? как заменит? сколько элемментов в массиве я так и недогнал(((, а вот такую регулярку- увы еще не придумали((( Code: preg_replace("|href= и тут перебрать 3 вар|","href=$re",$str);
первый пост ТС можешь забыть, его раскурили, походу. Щас обсуждается другой "еще один" вопрос, а именно:
Да, согласен с Кусто, тут хер чо проссышь на самом-то деле. ТС - еще раз и внятнее расскажи что хочешь. Я тебя понял, но мне кажецо, что не совсем так)
. тогда мож функцию preg_grep() всетаки заюзать????, получить массив и уж тогда что то в нем заменять на РАЗНЫЕ варианты а не так тупо 123 меняем на 234 (здесь смысл теряеться нет?)
Обьясняю еще раз. Я парсю html страницу и мне нужно заменить все 3 варианта href, а именно: 1) href=/ 2) href='/' 3) href="/" Замена будет на 1 мой текст. preg_replace('|href="тут надо сделать перебор 3 вариантов"/"и тут еще один перебор"|', 'href="http://site.ru/"', $page) Т.е. из массива берётся перебор и поиск 3 вариантов и замена на текст
PHP: $str = 'какой-то <a href=/>текст</a>; какой-то <a href=\'/\'>текст</a>; какой-то <a href="/">текст</a>;'; echo HTMLSpecialChars($str) . '<br />'; echo HTMLSpecialChars( preg_replace('/href=[\'\"]?\/[\'\"]?/', 'href="http://site.ru/"', $str) ); так что ли?
DoN, в мануале всё же есть: http://www.php.net/manual/en/function.preg-replace.php смотри Example #2... Создаёшь массив того, что заменяешь и массив того, чем заменяешь..
Не нашел на эту тему ничего интересного, интересует такой вопрос: возможно ли импортировать качу DLE в браузер средствами PHP? Есть скрипт DLE News Adder и 20 сайтов на DLE с капчей при добавлении новостей. Подскажите кто знает как и можно ли вообще сделать импорт По моим представлениям это не трудно, стягиваешь картинку с сайта, под ней сделать поле для ввода текста и данные из этого поля слать в соответствующее поле на сайте. Но мне не хватает опыта в этих делах, дайте какой то мануальчик на эту тему.