php.hr
Dobrodošli, Gost. Molimo, prijavite se ili se registrirajte.
23.01.2025., 07:36
1878 Postova 1000 Tema 442 Članova
Najnoviji Član: medolino
php.hr  |  PHP & MySQL  |  PHP  |  Regular expression sa slovima sa kvačicama « natrag naprijed »
 Str: [1]
Autor Tema: Regular expression sa slovima sa kvačicama  (Posjeta: 6426 )
maXimus
Novi član
*
Offline Offline

Spol: Muški
Postova: 18


Profil
« : 14.02.2007., 19:10 »

Da li postoji neki način da se u regular expression mogu uključit slova sa kvačicama (č,ć.š.ž,đ) ?
Evidentirano
snarez
Novi član
*
Offline Offline

Spol: Muški
Postova: 2



Profil
« Odgovor #1 : 14.02.2007., 22:15 »

Možeš li biti malo preciziniji; što želiš postići, postati dio koda koji se ne ponaša kako ti želiš? Meni doma nema nikakvih problema sa bilo kakvim znakovima u regexima. Sad, možda ja gledam na krivi način, ali kolko ja znam, svaki znak je zapisan pomoću kombinacije od određenog broja bitova, a charset određuje kako se to prikazuje, bilo kao đ, ono "oblo đ" ili upitnik. A regex uspoređuje po bajtovima (nadam se Very Happy ) pa problema ne bi trebalo bit. Ako sam u krivu, neka me netko ispravi...

P.S.
Ja koristim pregove a ne eregove, možda ima veze? Neda mi se sad isprobavat, idem spavat.
Evidentirano

Build man a fire and he'll be warm for a day. Set man on fire, and he'll be warm for the rest of his life.
Terry Pratchett
maXimus
Novi član
*
Offline Offline

Spol: Muški
Postova: 18


Profil
« Odgovor #2 : 14.02.2007., 22:24 »

Možeš li biti malo preciziniji; što želiš postići, postati dio koda koji se ne ponaša kako ti želiš? Meni doma nema nikakvih problema sa bilo kakvim znakovima u regexima. Sad, možda ja gledam na krivi način, ali kolko ja znam, svaki znak je zapisan pomoću kombinacije od određenog broja bitova, a charset određuje kako se to prikazuje, bilo kao đ, ono "oblo đ" ili upitnik. A regex uspoređuje po bajtovima (nadam se Very Happy ) pa problema ne bi trebalo bit. Ako sam u krivu, neka me netko ispravi...

P.S.
Ja koristim pregove a ne eregove, možda ima veze? Neda mi se sad isprobavat, idem spavat.
lol, uglavnom radim validaciju kontakt forme, i sad želim da prođu samo slova od a-z, e sad ako to stavim naravno neće proći npr. Ć, a neznam kako da provjerava u ascii kodu ili po bitnovima, u tome je problem
Evidentirano
ttc
Administrator
PHP Programer
*****
Offline Offline

Postova: 111



Profil WWW
« Odgovor #3 : 15.02.2007., 01:11 »

Znakovi od aA do zZ su sasvim dovoljni za validaciju bilo kakvog inputa.
Za bilo sto osim mail adrese bitno je jedino da input postoji, a sama mail adresa nije ispravna ukoliko u njoj postoje neengleski alfanumericki znakovi.
Evidentirano
snarez
Novi član
*
Offline Offline

Spol: Muški
Postova: 2



Profil
« Odgovor #4 : 15.02.2007., 09:16 »

Kolega ttc je dobro uočio, ali ako ipak imaš veliku želju provjeravat za palatale, samo navedi popis hrvatskih znakova na odgovarajuće mjesto. Npr provjeravaš na nekom balkanskom sajtu, je li čovjek unio ime, pa ne smije imat brojke i gluposti:

$ok = preg_match('/^[A-zšđč枊ĐČĆŽ]+$/', $ime);

ili sa case insensitive varijantom

$ok = preg_match('/^[a-zšđčćž]$/i', $ime);
Evidentirano

Build man a fire and he'll be warm for a day. Set man on fire, and he'll be warm for the rest of his life.
Terry Pratchett
maXimus
Novi član
*
Offline Offline

Spol: Muški
Postova: 18


Profil
« Odgovor #5 : 17.02.2007., 22:20 »

Mislim da nije bitno zašto mislim provjeravat palatale, i da naravno da ću provjeravat da li su za ime unesena slova.

Ali stvar nije tako jednostavna da samo unesem popis hrvatskih znakova, jer očito stvar ne radi ako u kod napišem ŽŠ itd.,
treba provjeravat ascii vrijednost znaka, a to neznam kako to stavit u regular expresion.
: 15.02.2007., 19:07
Evo rješenja, ako nekome zatreba, ovo se odnosi samo na velika slova (za mala ćete lako sami):

preg_match('/^[A-Z\x{17D}\x{16}\x{110}\x{106}\x{10C}]+$/u', $string)

vrijednosti u vitičastim zagradama su hex vrijednosti
Evidentirano
 Str: [1]
php.hr  |  PHP & MySQL  |  PHP  |  Regular expression sa slovima sa kvačicama « natrag naprijed »
    Skoči na: