Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][PP]Jak wyciągnąć tekst pomiędzy " "
Oklejek
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 30.01.2012

Ostrzeżenie: (0%)
-----


Witam, otóż mój problem polega na tym, że nie mogę sobie poradzic z funkcją preg_match_all, mianowicie mam cos takiego
  1. $tablica[1] = '"wartosc1" "wartosc2" "wartosc3" "wartosc4"';
  2. preg_match_all('/"(.*?)" "(.*?)" "(.*?)" "(.*?)"/', $tablica[1], $result);

Co tutaj jest źle i jak to naprawić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Pawel_W
post
Post #2





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


masz zły wzorzec, całkowicie mija się z preg_match_all (IMG:style_emoticons/default/smile.gif)

spróbuj tak:
/"([^"]+)"/
Go to the top of the page
+Quote Post
Oklejek
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 30.01.2012

Ostrzeżenie: (0%)
-----


Cytat(Pawel_W @ 30.09.2012, 11:53:19 ) *
masz zły wzorzec, całkowicie mija się z preg_match_all (IMG:style_emoticons/default/smile.gif)

spróbuj tak:
/"([^"]+)"/

Działa na preg_replace, ale niestety zwraca całą linie, a ja chce pobrać wszystkie 4 oddzielnie. Między "" mogą wystąpić spacje, więc explode nie zadziała.

EDIT:
Dobra, jakoś sobie poradziłem... zamieniłem " na [;spacja] i wykonałem explode.
  1. $tekst = preg_replace('/"/', '[;spacja]', $tablica[$i]);
  2. $t = explode('[;spacja]',$tekst);
  3. $nick = $t[1];
  4. $haslo = $t[3];
  5. $flagidostepu = $t[5];
  6. $flagikonta = $t[7];


Ten post edytował Oklejek 30.09.2012, 11:36:04
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 23:25