Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][REGEXP]
Forum PHP.pl > Forum > Przedszkole
golaod
Witam serdecznie.

Temat troszkę źle obrazuje to co chciałbym uzyskać. Konkretnie chodzi mi o coś takiego:

Mamy sobie string np.

jeden(dwa(trzy(1))) funkcja(funkcja1())

Wynikiem wyszukiwania powinna być tablica:
1 => jeden(dwa(trzy(1)))
2 => funkcja(funkcja1())

Czemu to nie jest proste. Ponieważ chciałbym, żeby to było idiotoodporne. Czyli w sytuacji:

jeden(dwa(trzy(1)))[el1,el2] funkcja(funkcja1())

wynikową tablicą była
1 => jeden(dwa(trzy(1)))
2 => [el1,el2]
3 => funkcja(funkcja1())

Co rodzi problem:
jeden(dwa(trzy([el1,el2])))

Pozdrawiam.

bump

Czyżby, był z tym aż taki problem ? Ogólnie mogę to zrobić przechodząc po każdym znaku w stringu, tylko pytanie czy to nie będzie mniej wydajne w porównaniu do wyrażeń.
Magic WWW
Trudne z zrobieniu to nie jest tylko mam pytanie, czy Ty podawałeś znaki [el...] jako przykład czy to ma być konkretnie do takich znaków?
sada
nie rozumiem zadania od :
Cytat
"co rodzi problem"
Magic WWW
Proszę bardzo smile.gif

  1. $string = 'jeden(dwa(trzy(1)))[asaasd]funkcja(funkcja1())';
  2.  
  3. preg_match('#[A-Z_0-9]+\(([A-Z0-9_,\(\)]+\))*#i', $string, $cut);
  4.  
  5. echo '<pre>';
  6. var_dump($cut);
  7. echo '</pre>';


W razie problemu pisz w temacie smile.gif
golaod
Cytat(Magic WWW @ 28.08.2011, 12:01:56 ) *
Proszę bardzo smile.gif

  1. $string = 'jeden(dwa(trzy(1)))[asaasd]funkcja(funkcja1())';
  2.  
  3. preg_match('#[A-Z_0-9]+\(([A-Z0-9_,\(\)]+\))*#i', $string, $cut);
  4.  
  5. echo '<pre>';
  6. var_dump($cut);
  7. echo '</pre>';


W razie problemu pisz w temacie smile.gif


Ok tylko uwzględniłem tam też sytuację:
jeden(dwa(trzy([el1,el2])))
która nie zostanie wyłapana Twoim wyrażeniem smile.gif Ale dziękuję za poświęcony czas.


bump

bump

bump

bump
kicaj
To dodaj to wyrazenie klamry kwadratowe poprzedzajac ukosnikiem...
golaod
Cytat(kicaj @ 29.08.2011, 17:21:36 ) *
To dodaj to wyrazenie klamry kwadratowe poprzedzajac ukosnikiem...

A sprawdzałeś działanie tego ?

bump

bump

Spytam może inaczej. Podobne rozwiązanie widziałem chyba w selektorach jquery do html. Może ktoś potrafiłby przerobić wyrażenie regularne z JS do PHP, a ja już bym sobie dalej poradził.
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.