|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : eugene v. 2:5025/245.1 02 Nov 2003 01:29:04 To : All Subject : CSV для EXEL --------------------------------------------------------------------------------
Вообщем EXEL сохраняет в формате CSV так
если в ячейке присутвтует символ " или символ ; то он ячейку берев в кавычки, а
кавычку текста удваивает доспустим есть таблица из одной строки и трех колонок
Это "первая" ячейка Это вторая; ячейка Это третья
в CSV формате это выглядит так
"Это ""первая"" ячейка";"Это вторая; ячейка";Это третья
Так вот нужен регексп чтобы засунуть эту строку в массив.
вот что я в одной из книг, но это не работает.
синтаксис сохранен:
правда хздесь разделители - ','
PS: Вообщем HELP
sub parse_csv {
my $text = shift;
# Запись со значениями, разделенными запятыми my @new = ();
push(@new, $+) while $text =~ m{
# Первая часть группирует фразу в кавычках
"([^\"\\]*(?:\\.[^\"\\]*)*)",?
| (^,]+),?
| ,
}QX;
push(@new, under) if substr($text,-1,1) eq ',';
return @new; # Список значений, которые разделялись запятыми
}
\\ Евгений
--- 00:21 02 Hоя 03 г.
* Origin: HNN (2:5025/245.1)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/32973fa425ad.html, оценка из 5, голосов 10
|