Autor Zpráva
dan55
Profil
Zdravím, mám tento reg.výraz:
if(!preg_match('$(http|https|ftp)\://([a-zA-Z0-9\.\-]+(\:[a-zA-Z0-9\.&%\$\ -]+)*@)?((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]) \.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25 [0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5] |2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])|([a-zA-Z0-9\-]+\ .)*[a-zA-Z0-9\-]+\.[a-zA-Z]{2,4})(\:[0-9]+)?(/[^/][a-zA-Z0-9\.\,\?\'\\ /\+&%\$#\=~_\-@]*)*$', $url)){

Je takový hnusně dlouhý, funguje suprově, jenže když tak zadám i WWW, tak to vrátí false. Co tam mám přidat?
Jinak nebráním se i jinému výrazu, ale chci vědět, jak tento upravit. Dík.
Davex
Profil
dan55:
jenže když tak zadám i WWW, tak to vrátí false
Kam zadáš WWW?

V tom regulárním výrazu asi přebývají mezery mezi
\ -
[1-9]) \.(25[0-5]
\.(25 [0-5]
25[0-5] |2[0-4]
\ .

Ta poslední bude asi příčina problému.

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: