Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 4.216 pregleda

Najnovija ↓

Izvlacenje vrednosti atributa sa regexp 24.12.2004. u 17:24 · pre 266 meseci #1
El moze neko da mi napise regexp PCRE za izvlacenje atributa iz sledeceg koda:

<?xml version=1.1 ?>
<row action="obrisi" status="101">

Trebami vrednosti atributa 'action' i 'status' ?

Hvala unapred. Inace sam pokusao sam nesto ali nikako mi neide
Uspeo sam npr. da izvucem:
action="obrisi" status="101"
sa:
$regexp = '/<row(.*)\/>/i';

ali nikako same vrednosti atributa.

Hvala unapred.

Potpis
Flash komponenta za atraktivan prikaz vesti na sajtu:
www.flash-news-ticker.com
Re: Izvlacenje vrednosti atributa sa regexp 24.12.2004. u 17:43 · pre 266 meseci #2
/<row.*action="([^"]*)".*status="([^"]*)".*>/i

Posto vidim da je php u pitanju, ako koristis preg_match_all, u $matches[1] i $matches[2] ces imati rezultate.
Re: Izvlacenje vrednosti atributa sa regexp 24.12.2004. u 18:02 · pre 266 meseci #3
Ukoliko je taj tag uvek ovakav:

<row action="obrisi" status="101">

onda je gornje resenje sasvim ok. Medjutim, ako moze da se desi da bude:

<row status="101" action="obrisi">

ili cak:

<row nesto="123" action="obrisi" josnesto="aaa" status="101">

mozes da napravis ovakvu funkciju:

Code:

function atribute_value($xml, $tagname, $attrname) {
    preg_match("/<$tagname\s+[^>]*$attrname\s*=\s*\"([^\">]*)\"[^>]*>/is", $xml, $match);
    return $match[1];
}


pa da vrednosti za atribute uzimas ovako:
Code:

$action = atribute_value($xml, 'row', 'action');
$status= atribute_value($xml, 'row', 'status');
// itd...
Potpis
Never trust an operating system you don't have sources for.
Re: Izvlacenje vrednosti atributa sa regexp 24.12.2004. u 18:05 · pre 266 meseci #4
Ako je u pitanju XML fajl, mozda bi ti bilo lakse da koristis XML Parser umesto PCRE-a...callback xml_set_element_handler() bi ti odradio posao...ako treba primer - reci.
Potpis
Jeff, one day you’ll understand that it’s harder to be kind than clever.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme