Автор Тема: очистить от параметров  (Прочитано 3693 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« : 14 Марта 2002, 14:39:50 »
Маленький и наверное весьма глупый вопрос :rolleyes:

Есть строка как http://www.server.com/url.php?id=20, т.е. строка с всевозможными параметрами. А ее надо превратить в просто строку http://www.server.com/url.php, в строку без параметров.

Как  это сделать на перле в наиболее быстром и компактном виде, особенно с учетом того что на обработку будет отданно несколько десятков тысяч строк.
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
очистить от параметров
« Ответ #1 : 14 Марта 2002, 14:47:51 »
The documentations is your friend

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« Ответ #2 : 14 Марта 2002, 14:53:28 »
А при чем тут вообще мод реврайт ? Я же указал, мне параметры надо отрезать, т.е. выкинуть к чертям. Это обработка лога, она вообще в кроне делается.
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
очистить от параметров
« Ответ #3 : 14 Марта 2002, 15:08:49 »
Цитировать
Это обработка лога, она вообще в кроне делается.

А я по твоему, телепат? Какой вопрос-такой ответ.

$url=~ s/\\?\\S+//i;
The documentations is your friend

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« Ответ #4 : 14 Марта 2002, 16:35:52 »
NeoNox
а я и спрашивал, как убрать параметр именно из строки. А за ответ отдельное спасибо :)
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
очистить от параметров
« Ответ #5 : 14 Марта 2002, 16:45:28 »
Цитировать
как убрать параметр именно из строки

Ну я так и понял. Только как адрессную... :)
The documentations is your friend

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« Ответ #6 : 29 Марта 2002, 21:57:24 »
Опять я, и снова по старому вопросу.
Вот код

$_s="http://www.ya.ru/yandsearch?text=%CD%E0%F3%F2%E8%EB%F3%F1 %CF%EE%EC%EF%E8%EB%F3%F1";
$_s=~ s/\\?\\S+//i;
print $_s."\\n";

$_s="http://www.ya.ru/yandsearch?text=vasia&id=12";
$_s=~ s/\\?\\S+//i;
print $_s."\\n";


В результате запуска получаем следующее:

[url]http://www.ya.ru/yandsearch[/url] %CF%EE%EC%EF%E8%EB%F3%F1
[url]http://www.ya.ru/yandsearch[/url]

Почему не корректно работает с первой строкой ?
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
очистить от параметров
« Ответ #7 : 29 Марта 2002, 22:08:00 »
Цитировать

Почему не корректно работает с первой строкой ?

Потому что в ней пробел есть, а в регулярном выражении написано \\S, что означает любой непробельный символ.
2B OR NOT 2B = FF

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« Ответ #8 : 30 Марта 2002, 01:20:57 »
Тогда напрашивается вопрос - как быть ?
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
очистить от параметров
« Ответ #9 : 30 Марта 2002, 01:57:05 »
Цитировать
Тогда напрашивается вопрос - как быть ?

perldoc perlre :)
Учите регэкспы бо они рулез.:))
$_s=~ s/\\?.*//;
2B OR NOT 2B = FF

Оффлайн Stek

  • Обожатель PHP
  • Ветеран
  • *****
  • Сообщений: 532
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.phpdevs.com
очистить от параметров
« Ответ #10 : 30 Марта 2002, 02:18:03 »
Спасибо.
PHP без башни - сделай свою жизнь разнообразнее.
Разбираю скрипты, собираю заново, вытираю пыль с баз данных.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28