Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]preg_replace
Forum PHP.pl > Forum > Przedszkole
michal_robak
Witam mam problem z pewnym wyrażeniem. Na razie udało mi się wykombinować co¶ takiego:

  1. $test = '"ZK",1,0,"49 ","49 / 2009",,"49 ",,,,,"H_"," "," ",,,,,"BLEH - Płatno¶ć przy odbiorze",,"Miasto","203562100224","2008-08-18 09:38:26",,"1",0,"internet",,,,,,"6",,,"4344.922","3311.97",0,0,1,,"Janek Janek",,,0,0,"PLN",1,,,,0,0,0,,0,,0,"Polska","PL",0';
  2. echo $test.'<br>';
  3.  
  4. preg_match_all("/(\"[±ćęłńó¶ĽżˇĆĘŁŃÓ¦¬Ża-zA-Z0-9\.\-\s+\,\/_\:]+\")\,?/",$test,$nawiasy);
  5.  
  6. var_dump($nawiasy);



I teraz co ja chcę uzyskać. Potrzebuje rozbić ten długi ci±g po znaku "," (przecinek). Wszystko byłoby proste gdy wartosci pomiedzy przecinkami same w sobie ich nie zawierały smile.gif. Dlatego musze uzyc preg_matcha a nie exploda. Ten powyzszy skrypt pobiera mi wszsytkie zmienne pomiędzy przecinkami które s± zawarte w cudzysłowach i kończa się przecinkiem. Czyli z wyrazenia prostszego:

  1. $test='"1","2",3,,5,"6"';


pobrał by mi 1,2,6;

nie pobiera mi 3,pustego ciagu,5

jak przerobic to wyrazenie aby je pobierał bo juz wymiękam :/
seth-kk
nie lepiej zrobic to w 2ch krokach?
1:
  1. preg_match_all('/(.*?),/', $test, $arr);

2: dla kazdego elementu ktory zaczyna sie cudzyslowiem ale nie konczy scal z kolejnym
To jest wersja lo-fi głównej zawarto¶ci. Aby zobaczyć pełn± wersję z większ± zawarto¶ci±, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.