Re: [Ruby] Помогите разобрать ..
Vladimir Zdorovenco
sunwinder на gmail.com
Вс Янв 30 18:30:08 MSK 2005
Не совсем понял про zero-width рег. выражения.. Если можно подробнее.
Надо вытащить из то строки, ключ/значение вида:
КВ=[значение]; \w+=дата; \w+=путь
[] - значит что может и небыть
строка состоит из этих вот КВ, т.е:
Set-Cookie=КВ, КВ, КВ
я думал так, проще всего
myhdr = 'GMAIL_AT=; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/,
GMAIL_PREFS=; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/, GV=;
Domain=gmail.google.com; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/,
GV=; Domain=gmail.google.com; Expires=Fri, 28-Jan-05 23:56:04 GMT;
Path=/gmail, GX=; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/gmail'
myhdr.split(/,/).each { |v|
puts v
}
но получается билиберда потому-что автор net/http.rb делит запятой =)
Можно было в качестве разделителя успользовать - ;;
тогда такое могло сработать; собственно я так и сделал, поменял в
net/htto.rb запятую на ;;
On Sun, 30 Jan 2005 17:59:12 +0300, Тим Алексеевский <realtim на mail.ru> wrote:
> Привет
>
> Vladimir Zdorovenco (Янв 30, 2:26):
> > ...
> > например с cookie получается:
> >
> > GMAIL_AT=; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/, GMAIL_PREFS=;
> > Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/, GV=;
> > Domain=gmail.google.com; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/,
> > GV=; Domain=gmail.google.com; Expires=Fri, 28-Jan-05 23:56:04 GMT;
> > Path=/gmail, GX=; Expires=Fri, 28-Jan-05 23:56:04 GMT; Path=/gmail
> >
> > Запятая может быть в дате; как такое разобрать ?
> Честно говоря я не очень понял задачу, но не копая глубоко, могу
> поделиться своим впечатлением:
> после ', ' в случае когда не дата идет /\w+=/, если это так, то
> как-нибудь, хоть zero-width регулярными выражениями, хоть чем, это
> разобрать удастся.
>
> Тим
>
> --
> ++ "If the shoe fits, buy it." Imelda Marcos ++
> --
>
--
Be happy,
Vovka
ICQ: 127534289
Подробная информация о списке рассылки Ruby