Autor Zpráva
milan
Profil *
nepomohl by mi nekdo s regularnim vyrazem prosim?

mohou se vyskytovat tyto tri tvary

{_"nejaky text"}
{_"nejaky text", cislo}
{_"nejaky text", cislo nebo NULL, cokoli}

a potreboval bych vzdy dostal ten "nejaky text", pokud je to varianta 2 tak to cislo nebo NULL a pokud je to varinta 3 tak jeste jeden retezec obsahujici to cokoli.

pokud by se nasel nekdo ochotny tak predem dekuji
Kcko
Profil
<?php

$text = ' bla bla bla {_"nejaky text"}
{_"nejaky text", cislo} bla bla bla 
{_"nejaky text", cislo nebo NULL, cokoli} bla bla bla  ';



preg_match_all("~\{_(.+)\}~", $text, $matches);


$text = array();
foreach ($matches[1] as $m)
{
    $text[] = explode(',', $m);
}


print_r($text);
milan
Profil *
Kcko:
diky ale, tohle samozrejme nebude fungovat protoze carky se mohou vyskytovat jak v textu u prvni varianty tak i u posledni.
navic vim ze to jde vzit primo ztoho regularu a to mi jde. zadne hratky s explode apod nechci (vzdycky se mi pak stane ze to nekdy nejak nefunguje)
peta
Profil
'\{\_\"[^"]*?\"[^}]*\}'

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0