[ sjanos @ 14.07.2004. 11:22 ] @
Imam sledeci problem:
Korisnik u bazu ubacuje neki opis i na jednoj stranici treba da prikazem samo kratak opis.
e sad ja sam to uradio pomocu explode komande:
Code:
$description_short = explode(".",$line_cat[description]);
i onda ga ispisujem sa
Code:
$description_short[0]
i ovo radi super ali meni trebao neki nacin da isto ovako mogu da izdvojim delove stringa kod "?" ili "!", znaci na koji prvo naide ("." ili "!" ili "?"). kojom funkcijom(komandom) bih to mogao najlakse da uradim. Nasao sam nesto kog ereg ili preg_ereg-a ali da budem iskren ne razumem bas njihovu sintaksu npr:
Code:
ereg("^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+))*$",$email)

To znam da proverava e-mail adresu da li je validna ali sta mu znace ovi simboli npr:"^" (u matematici znaci svaki ako se ne varam), u php manual-u ne pise.
Dobro bi dosao bilo kakva pomoc.
Hvala svima unapred.
[ markom @ 14.07.2004. 11:32 ] @
Za objašnjenje regularnih izraza, pogledaj ovde.

Marko.

[ dinke @ 14.07.2004. 12:25 ] @
Koliko sam skapirao želiš da uzmeš deo stringa do prvog pojavljivanja jednog od karaktera koji mogu da označe kraj rečenice {".","!","?"} i da ga ubaciš u bazu.
Mislim da ti je najjednostavnije da funkcijom strpos tražiš prvo pojavljivanje za svaki karakter, zatim vidiš koji je najmanji i za tu vrednost f-jom substr uzmeš taj podstring. Primer:
Code:

$dot_position=strpos($mystring, "."); 
$exclamation_position=strpos($mystring, "!");
$questionmark_positon=strpos($mystring, "?");

//ovde ide poziv f-je za proveru koji je od gornjih vrednosti najmanji
// i to ubacis u $length
$sentence=substr ($mystring, 0, $length)



[ sjanos @ 14.07.2004. 12:43 ] @
hvala vam na pomoci uspeo sam da resim problem na sledeci nacin:
Code:
preg_match("/([^\?!.]+)?[?!.]/i",$line_cat[description],$description_short);

i posle ispis ide sa:
Code:
$description_short[0]

Inace string vadim iz baze. String se sastoji od vise recenica a meni je trebao samo jedan deo ustvari prva recenica mi je bila potrebna. Najveci problem je bio sto nisam razumeo sintaksu regularnih izraza. ovaj link bi preporucio svima koji imaju poteskoca sa regularnim izrazima http://etext.lib.virginia.edu/helpsheets/regex.html
Hvala vam jos jednom.