Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > Perl

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 10.02.2002, 09:15
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 1  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
По умолчанию Как разобрать строку?

Приветствую!

Помогите разобраться, есть сторка что типа такого
http://..../pl.pl?kod=1191&size=2&kod=1195&size=1

так вот мне необходимо чтобы скрипт при обработке ее выводил резудьтат так:
1191 _____ 2
1195 _____ 1
т.е. какждой паре соотвествовало свое значение.
Как это сделать?

Если бы строка была токой
?kod1=1191&size1=2&kod2=1195&size2=1
то не чего сложного не было бы .
Но а если она не такая???

Как ее обработать????

Старый 10.02.2002, 10:51
[subway]design вне форума Посмотреть профиль Отправить личное сообщение для [subway]design Посетить домашнюю страницу [subway]design Найти все сообщения от [subway]design
  № 2  
[subway]design
 
Аватар для [subway]design

Регистрация: Oct 2001
Адрес: в Петербурге
Сообщений: 2,430
Суешь в массив всю $ENV{'QUERY_STRING'}, потом парами перебираешь в цикле:

@query=split(/&/,$ENV{'QUERY_STRING'});

for($i=0; $i<=(@query.length-1);$i+=2){

$temp_kod=$query[$i];
$temp_size=$query[$i+1];

//делаешь с ними что хочешь...

}


только я Перлом давно не занимался, если будут синтаксические ошибки, не принимай близко к сердцу. А в целом идея ясна...
__________________
subway.net.ru

Старый 10.02.2002, 13:18
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 3  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
Спасибо!!!

Поторопился я

Да я так и сделал!!! идея правильная!!!


Старый 26.02.2002, 17:11
shagren вне форума Посмотреть профиль Отправить личное сообщение для shagren Найти все сообщения от shagren
  № 4  
shagren

Регистрация: Feb 2002
Сообщений: 30
А еще мона так:

$query=$ENV{'QUERY_STRING'};
while($query=~/kod=(\d+)\&size=(\d+)/g){
<код>=$1;
<сайз>=$2;
}

А внутри етого цикла делаешь еще чего хошь с кодом и сайзом.

Старый 27.02.2002, 02:43
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 5  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
В принципе это одно и тоже....
только заместо for берется while......

...интерестно, а отличия между ними есть?

Старый 27.02.2002, 12:49
shagren вне форума Посмотреть профиль Отправить личное сообщение для shagren Найти все сообщения от shagren
  № 6  
shagren

Регистрация: Feb 2002
Сообщений: 30
Ваще-то есть
Во первых не люблю конструкции типа
@qqq.length
Её моно заменить на $#qqq
А во вторых надо заставлять юсеров учить рег. выражения, и что с ними связанно, очень полезно для общего развития интелектуального уровня государства...
__________________
Я всех лучше, я всех краше
Всех умнее и скромнее всех...

Старый 28.02.2002, 05:08
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 7  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
Спасибо за разъяснение!!

Надо попробывать... все, что есть!!

Создать новую тему   Часовой пояс GMT +4, время: 20:08.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 20:08.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.