|
|
|
|
|
для: vitali
(03.10.2008 в 15:17)
| | ,""ка""шу,
.............
,)(?:"(?<inwardly> (?: [^"]|"")* )"
............
отсчёт начинается с кавычки после запятой , после которой может идти некавычка или ещё две кавычки
следовательно в <inwardly> попадает пустая строка между первыми двумя кавычками т.к. там *
, наверное
прикольно что можно дать названия подмаскам. или я не знал , или ещё и забыл ;) | |
|
|
|
|
|
|
| стр. 240
echo "Контроль за смещеннием текущей позиции";
preg_match_all('%
(?:^|,)
(?: # поле в кавычках(внутри допускаются удвоенные кавычки)
" # Открывающая кавычка
(?<inwardly> (?: [^"] | "" )* )
" # Закрывающая кавычка
|
(?<all> [^",]* ) #Все кроме запятых и кавычек ...
)
(?=$|,)
%ix', 'маша, ела, кашу, ""ка""шу,, нет кашу,', $out);
echo "<pre>";
print_r($out);
echo 'странно куда делись данные в [inwardly] и ""ка""шу</pre>';
|
| |
|
|
|
|