[Moscow.pm] # Не удаляется в скобках

Ilya Chesnokov chesnokov.ilya на gmail.com
Вс Апр 5 13:24:17 PDT 2015


5 апреля 2015 г., 23:14 пользователь Кузьменко Константин
<ikkv на yandex.ru> написал:
> Это файл TXT
> 123 | 12345678901234567890 |     760.00 |ФАМИЛИЯ       |ИМЯ            |ОТЧЕСТВО     |123456|222|888|9|RU|00007|
> На Выходе должен получиться CSV
> 12345678901234567890;ФАМИЛИЯ;ИМЯ;ОТЧЕСТВО;760.00;

Это вообще проще без регулярок делать. А банальным split-ом (с
минимальной регуляркой вида /\s*|\s*/) и join-ом (ну или при помощи
модуля Text::CSV).


> --
> Специалист IT, GNU, FLOSS, Open Source
> Моб: +7 (951) 131 33 90
> С уважением,
> Кузьменко Константин Викторович
>
>
> 05.04.2015, 18:16, "Иван Миронов" <mironorange на gmail.com>:
>> Константин, Добрый день!
>>
>> Попробуйте уменьшить жадность квантификаторов добавив после знаков звездочки вопросительный знак.
>>
>> s/^(.*?;).*?;.*?;.*?;.*?;.*?;(.*?;.*?;.*?;.*?;.*?;.*?;)$//g;
>>
>> Если не получится, я думаю было бы здорово если бы вы приложили пример исходных данных для этого регулярного выражения.
>>
>> воскресенье, 5 апреля 2015 г. пользователь Алексей Мышкин написал:
>>> Есть подозрение что жадный квантификатор берёт всё что может, и строке за скобками уже ничего не остаётся.
>>>
>>> 5 апреля 2015 г., 15:42 пользователь Кузьменко Константин <ikkv на yandex.ru> написал:
>>>> Добрый день Moscow.pm
>>>> Не могу понять регулярки перл!
>>>>
>>>> #!/usr/bin/perl
>>>>
>>>> use strict;
>>>> use warnings;
>>>> use utf8;
>>>> use open qw/ :encoding(utf8) :std /;
>>>> #use open qw/ :encoding(cp1251) :std /;
>>>>
>>>> my @onfil = @ARGV;
>>>> open(INFIL, "<:encoding(cp866)", $onfil[0])
>>>>     or die "NO STANDART $!";
>>>>
>>>> while (<INFIL>) {
>>>>     $_ =~ s/\h+//g;
>>>>     $_ =~ s/\|/;/g;
>>>>     $_ =~ s///g;
>>>>     $_ =~ s/^(.*;).*;.*;.*;.*;.*;(.*;.*;.*;.*;.*;.*;)$//g; # Не удаляется в скобках
>>>>     print;
>>>> }
>>>>
>>>> close INFIL;
>>>>
>>>> __END__
>>>>
>>>> Может что нибудь посоветуете
>>>> зы: Z yjdbxjr d Зукл
>>>> --
>>>> Специалист IT, GNU, FLOSS, Open Source
>>>> Моб: +7 (951) 131 33 90
>>>> С уважением,
>>>> Кузьменко Константин Викторович
>>>>
>>>> --
>>>> Moscow.pm mailing list
>>>> moscow-pm на pm.org | http://moscow.pm.org
>>>
>>> --
>>> С уважением,
>>> Мышкин Алексей.
>>
>> --
>>
>>>
>> С уважением, Миронов Иван!
>> тел.: +7 (926) 206-90-39
>>
>> ,
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org



-- 
Best regards,
Ilya Chesnokov


Подробная информация о списке рассылки Moscow-pm