phpbar.de logo

Mailinglisten-Archive

[php] ereg will nicht

[php] ereg will nicht

Alexander Zimmermann php_(at)_phpcenter.de
Tue, 15 May 2001 18:10:54 +0200


>hi liste,
>
>ich hab da also eine regex:
>^(https?|ftp)://[_(at)_.-a-z0-9]+(/[/&%?=._-a-z0-9]*)?
>und die wollte ich nun bei einem ereg() einsetzen.
Hi Benjamin,


Ich weiß nicht ob das die Lösung ist,
aber so läuft es bei mir:

// Benjamin Muster
$muster="^(https?|ftp)://[_(at)_.-a-z0-9]+(/[/&%?=._-a-z0-9]*)?";
// Alex Muster
$muster="^(https?|ftp)://[.-_(at)_a-z0-9]+(/[/&%?=._a-z0-9]*)?";
if (!ereg($muster, $themail))
	echo "Falsch";
else
	echo "Richtig";

Lösungsansatz:
Das _(at)_ ist ASCII - Wertemäßig hinter
dem "." anzusiedeln, also muß es .-_(at)_ heißen.
Zeichen ASCII-Wert
_(at)_	  64
.       46

Deswegen .-_(at)_ (und an der Syntax war ein kleiner Fehler .-_(at)_a-z und nicht
_(at)_.-a-z)




php::bar PHP Wiki   -   Listenarchive