|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Alexander V. Gaiduk 2:5020/400 29 Apr 2003 09:22:08 To : Michael A. Ivanovsky Subject : Re: регексп не выходит :-( разделение на слова с учётом кавычек и пробе --------------------------------------------------------------------------------
пробелов
> ??>> Приветствую!
> ??>> как разделить строку вида:
> ??>>
> ??>> --------
> ??>>
> ??>> Мама "мыла раму" дома
> ??>>
> VP> use Text::ParseWords;
> К сожалению надо регексп. Я понимаю, что к перлу это как то... Hо больше
> негде сросить
>
> Thanks for cooperation, Michael A. Ivanovsky
> http://iv.amrita.ru/palm/ iv@amrita.ru icq 70775040
>
думаю поможет,
из моего сборника FAQ-ов:
#################################################################
# Есть такая строка:
# 1,2,5,'this is string field','look, this is another field'
# Hадо ее split-ом разбить на элементы, которые разделяются запятыми, при
этом
# то, что в апострофах, разбивать не надо.
$st = "1,2,5,'this is string field','look, this is another field'";
@splitted = grep /\w/, split/(\'[^\']*\')|,/, $st;
# или
@splitted = $st =~ /((?:[^',]|'[^']*')*)(?:,|$)/g; # добавляет пустой
элемент
# или
@splitted = eval qq($st); # у слов отрезаются апострофы
--- ifmail v.2.15dev5
* Origin: NetAdmin Department (2:5020/400)
Вернуться к списку тем, сортированных по: Архивное /ru.cgi.perl/10389489e7f9c.html, оценка из 5, голосов 10
|