hulp maken preg_match

Status
Niet open voor verdere reacties.

phobia

Terugkerende gebruiker
Lid geworden
4 sep 2006
Berichten
1.777
Hoi helpers,

ik wil een validatie maken die kijkt of een string een url is.

maar dan een www.ergensheen.com/folder/dieper/...........

http:// of ftp:// mag er dus niet voor!

Ik heb namelijk geen idee hoe het werkt. Heb al tuts gelezen, maar het kwrtje wit bij mij niet vallen!
 
Staat hier of hier niets tussen? Zelfs als ze dan met http:// werken, kan je het er stiekem voor plakken. Mischien kan je ook wat doen met parse_url (hoewel de manual zelf al wel aangeeft:
This function is not meant to validate the given URL
, dus je moet zelf maar eventjes kijken)



:thumb:
 
Laatst bewerkt:
Nou die preg_macth is totale Jibbrisch voor me. Word nog een hele kluf om dat te gaa begrijpen!

Heb al een online editor gevonden daavoor maar helpt nog niet veel!

http://www.gskinner.com/RegExr/

Ik heb de expressie /[\w\x]+/ en de string M0rP* h1uS dat geeft mij een match wat ik nog wil begrijpen.

maar verander ik de string in M0rPh1us, dat geeft hij weer een match, maar in die editor online, vind hij netjes de verschillen!
 
Laatst bewerkt:
Wie kan mij helpen?
ik heb dit, als ik dit bij http://www.gskinner.com/RegExr/ invoer.
(minus '/ aan begin en /' aan het eind)
Maar ik krijg hier het antwoord No Match

volgens mij moet hij 2x leters en cijfers zoeken tot aan een punt en na de tweede punt kijken of de volgende 2 of 3 letters zijn.
en volgens mijn is dat in de $url ook het geval en zou hij Match moeten geven.
PHP:
$url = 'www.piethein.com';
$pattern = '/((([a-zA-Z0-9_]+).?){2})([a-zA-z]{2,3}/';

if(!preg_match($pattern,$url) { echo 'No Macht';}
else { echo 'Macth';}
 
Je ben een sluithaakje vergeten in je pattern:
PHP:
$pattern = '/((([a-zA-Z0-9_]+).?){2})([a-zA-z]{2,3}/';
moet zijn
PHP:
$pattern = '/((([a-zA-Z0-9_]+).?){2})([a-zA-z]){2,3}/';
Dit werkt trouwens ook:
PHP:
$pattern = '/([a-zA-z0-9_]+.){2}[a-zA-z]{2,3}/';
of (nog korter):
PHP:
$pattern = '/(\w+.){2}[a-zA-z]{2,3}/';

In je "if" ontbreekt trouwens ook nog een haakje sluiten:
PHP:
if(!preg_match($pattern,$url)
moet zijn
PHP:
if(!preg_match($pattern,$url))
 
Laatst bewerkt:
Ik heb een artikel gevonden over ereg. Die gelezen, geprobeerd en success gehad. Dit werk met mijn pattern.

ook nog een andere site gevonden om je reg uit te testen in javascript, preg en ereg.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan