[ neStwarna @ 11.06.2010. 16:02 ] @
Pozdrav svima, ja sam nova na forumu

Zamolia bih nekoga da mi pomogne oko sledeceg:
Treba mi regex za php koji ce prepoznati u nekom stringu url link za neki sajt, ali ne regularan vec kada ga neko sakrije na primer:

www.google.com

neko napise kao:

g oo.gle [dot] co,m
www . google [dot] c o m
w_w_w. goo gle . c . o . m

Treba mi to za php, molim vas

Hvala unapred, Tanja.
[ kazil @ 11.06.2010. 16:22 ] @
Koji su moguci sabloni koji se mogu pojavljivati?

Btw, ovde se obicno postavljaju teme kada neko krene sa necim i zapne, pa mi ostali pomognemo... Ako treba neko da napise gotovo, sigurno ce se neko javiti ako postavite temu na IT berzu poslova.

(is'se, zvucim k'o neki mod :P)
[ ventura @ 11.06.2010. 16:32 ] @
Ako hoćeš da spamuješ, onda se bar pomuči malo...
[ neStwarna @ 11.06.2010. 18:19 ] @
:) Problem je u tome, sto iako nisam nova u PHPu, nisam do sada nikada radila nista slozenije u regex-u osim da prepoznam da li su neke odredjene kombinacije karaktera i cifara u nizu, ali ovo je drugacije, jer ima tih "celina" oko tacke, gde moze i ne mora da bude te tacke, vec [dot] ili slicno.

Zato sam mislila da li bi neko mogao da mi pomogne da to resim.

Imate li neki predlog da li nesto drugo da probam osim regex-a ako je previse tesko (za vas) :p

P.S. Kombinacije (varijante) su:

Da ima ili nema www pritom da je to www nesto na foru [w|W] + ?{0,3} + [w|W] + ?{0,3} + [w|W] + ?{0,3}
gde mislim da izmedju svakog W ili w bude bilo koji karaketr najvise 3 puta

Dalje, da ide . ili [dot] (to ne znam kako da napisem) mozda nesto kao: (.|[\[+d+o+t+\]]) ?

Pa onda neki set karaktera koji odgovaraju imenu domena (bez tld-a), tipa a-z,A-Z,0-9,-,_ i da moze da bude nesto tipa [:space:] ili neki whitespace izmedju svakog (u broju od 0 do 3 najvise razmaka)

Na kraju jos jednom ono za tacku (ista logika), nakon cega TLD sa eventualno jednim ili dva moguca whitespace-a izmedju svakog od 2 do 4 karaktera koliko moze TLD imati.

Nadam se da ovo pomaze.

Nije da nisam razmisljala o tome, nego jednostavno ne znam da napisem regex sintax za to.

Hvala unapred.
[ Goran Rakić @ 11.06.2010. 18:38 ] @
Prvo uradi normalizaciju, a tek onda prepoznavanje. Normalizacija će da ukloni razmake, zameni [dot] sa tačkom i slično. Za naprednije rešenje normalizacija može i da nudi više varijanti sa nekom tačnošću, pa prepoznavanje radiš nad stablom odlučivanja.