Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: заменить второй ? на &
 
 автор: elenaki   (13.11.2009 в 10:29)   письмо автору
 
 

помогите заменить второй ? на & с помощью регвыра.

мне надо переписать URL. противный банк возвращает его после оплаты, цепляя свою переменную в конец. в результате получается

http://www.site.gr/page.php?page=ok?ref=140684034afbde28a02d

и страница не открывается :(

  Ответить  
 
 автор: ....   (14.11.2009 в 14:51)
 
   для: elenaki   (13.11.2009 в 10:29)
 

Не пойму является.ли исходным текстом html.код или просто адресс ссылки. Так.то может и такое работать с одной строкой где только два вопроса.
preg_replace('#(\?.*)\?#', '$1&', 'xxxxx?xxxxxxx?xx&x');

  Ответить  
 
 автор: elenaki   (14.11.2009 в 18:06)   письмо автору
 
   для: ....   (14.11.2009 в 14:51)
 

это именно одна строка - URL. менять ее я собираюсь в mod rewrite, чтобы он переделал
линк на правильный и направил на страницу page.php?page=ok&ref=12345... попробую в
понедельник. пока спасибо за ответ.

  Ответить  
 
 автор: ....   (14.11.2009 в 19:06)
 
   для: elenaki   (14.11.2009 в 18:06)
 

при более двух вопросов будет наверное
[^\?]* вместо .*
всмысле
preg_replace('#(\?[^\?]*)\?#', '$1&', 'xxxxx?xxxxxx?xx&x');
, заменит именно второй из трёх вопросов
Но при более трёх заменится каждый второй, а с .* только один , последний.
Только нужно проверять без риска совсем потерять данные из-за возможных ошибок :) ато бывало у меня такое

  Ответить  
 
 автор: elenaki   (15.11.2009 в 16:48)   письмо автору
 
   для: ....   (14.11.2009 в 19:06)
 

да нет, трех вопросов там уже не будет.

оказывается URL с параметрами в Apache не поменять... :( ну, я уже по-другому сделала -
с помощью выражения, которое мне тут подсказали, вытянула нужный параметр и потом
сделала переадресацию на нужную страницу с нужными параметрами. всем спасибо!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования