The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"perl "
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"perl "  
Сообщение от serg (??) on 21-Фев-06, 15:42 
Спасайте !!!
Допустим есть текст
q1,q2,"g1 g2,r1 r2",e1
что бы получить каждый эелемнт в массива делаю так
@all=split(/,/$_);
дале в цикле монипулирую данными через переменную $all[$x]
Вот мой вопрос как считать строку таким образом чтобы содержимое кавычек считалось как один эелемент а запятая в ковычках игнорировалась?
Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

 Оглавление

  • perl , gr, 17:24 , 21-Фев-06, (1)  
    • perl , gr, 17:24 , 21-Фев-06, (2)  
      • perl , serg, 19:32 , 21-Фев-06, (3)  
  • perl , chip, 11:31 , 22-Фев-06, (4)  
    • perl , chip, 11:32 , 22-Фев-06, (5)  
  • perl , vt, 12:01 , 22-Фев-06, (6)  

Сообщения по теме [Сортировка по времени, UBB]


1. "perl "  
Сообщение от gr (??) on 21-Фев-06, 17:24 
>Спасайте !!!
> Допустим есть текст
>q1,q2,"g1 g2,r1 r2",e1
>что бы получить каждый эелемнт в массива делаю так
>@all=split(/,/$_);
>дале в цикле монипулирую данными через переменную $all[$x]
>Вот мой вопрос как считать строку таким образом чтобы содержимое кавычек считалось
>как один эелемент а запятая в ковычках игнорировалась?

Воспользуйся модулем соответсвующим http://search.cpan.org/~tmtm/Text-CSV-Simple-1.00/lib/Text/CSV/Simple.pm

или аналогичным.

В общем случае такой парсинг нетривиален.

Вот хорошая книжка (есть на русск), там этому делу нлвав посвящена:

http://www.oreilly.com/catalog/regex/

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

2. "perl "  
Сообщение от gr (??) on 21-Фев-06, 17:24 
нлвав = глава
Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

3. "perl "  
Сообщение от serg (??) on 21-Фев-06, 19:32 
>нлвав = глава
Спасиб буду разбираться...

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

4. "perl "  
Сообщение от chip email(ok) on 22-Фев-06, 11:31 
>Спасайте !!!
> Допустим есть текст
>q1,q2,"g1 g2,r1 r2",e1
>что бы получить каждый эелемнт в массива делаю так
>@all=split(/,/$_);
>дале в цикле монипулирую данными через переменную $all[$x]
>Вот мой вопрос как считать строку таким образом чтобы содержимое кавычек считалось
>как один эелемент а запятая в ковычках игнорировалась?

Если есть желание, напиши мне на почту я скину тебе свой код.

ps: стандартный CSV::Simple не всегда разбирает нормально :(.


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

5. "perl "  
Сообщение от chip email(ok) on 22-Фев-06, 11:32 
>ps: стандартный CSV::Simple не всегда разбирает нормально :(.

Тоже самое, кстати, касается Text::CSV, Text::CSV_XS


Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

6. "perl "  
Сообщение от vt (ok) on 22-Фев-06, 12:01 
> Допустим есть текст
>q1,q2,"g1 g2,r1 r2",e1
>что бы получить каждый эелемнт в массива делаю так
>@all=split(/,/$_);
>Вот мой вопрос как считать строку таким образом чтобы содержимое кавычек считалось
>как один эелемент а запятая в ковычках игнорировалась?

Можно попробовать заставить заниматься разбором сам perl
chop; $_='@all=('.$_.')'; eval

Правка | Высказать мнение | Ответить | Cообщить модератору | Наверх

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру