PDA

Bekijk Volledige Versie : [PHP] regular expression



Maarten Wierda
15/03/03, 16:35
Hi n.i.w.s-s,

Ik ben op zoek naar een regular expression die alleen letters [a-z],
cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.

Ik heb nu dit:

<?php

$str = "00_gebruikersnaam";

if (ereg("[0-9]_[a-z]", $str)) {
print($str." yeah");
}
else {
print($str." damn");
}

?>

Maar nu moet de volgorde ook daadwerkelijk cijfer-underscore-letter zijn
en dat wil ik dus niet. De string "67gbhej_67" zou nl. ook goed moeten
worden bevonden.

Kan iemand me helpen met de juiste expressie? Alvast bedankt voor de
evt. reacties.

--
Cheers, Maarten Wierda

Richard Rasker
15/03/03, 16:50
Op 3/15/03, 4:24:24 PM, schreef Maarten Wierda <moart3n@norecessDOT.com>=
=20
over het thema [PHP] regular expression:

> Hi n.i.w.s-s,

> Ik ben op zoek naar een regular expression die alleen letters [a-z],
> cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.

> Ik heb nu dit:

> <?php

> $str =3D "00_gebruikersnaam";

> if (ereg("[0-9]_[a-z]", $str)) {
> print($str." yeah");
> }
> else {
> print($str." damn");
> }

> ?>

> Maar nu moet de volgorde ook daadwerkelijk cijfer-underscore-letter zi=
jn
> en dat wil ik dus niet. De string "67gbhej_67" zou nl. ook goed moeten=

> worden bevonden.

Gewoon "[0-9]|_|[a-z]" (Dus het | pipe-symbool als 'of')?

Richard Rasker

--=20
Linetec Translation and Technology Services

http://www.linetec.nl/

robert
15/03/03, 16:50
Maarten Wierda <moart3n@norecessDOT.com>:
> Ik ben op zoek naar een regular expression die alleen letters [a-z],
> cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.

^[0-9a-z_]$

De meta-chars '^' en '$' zijn nodig omdat anders ook strings kunnen matchen
die alleen een geldige substring bevatten maar zelf niet volledig geldig
zijn.

--
robert

robert
15/03/03, 16:50
robert <robert+nl.internet.www.server-side@usenet-h.allyourbass.org>:
> Maarten Wierda <moart3n@norecessDOT.com>:
> > Ik ben op zoek naar een regular expression die alleen letters [a-z],
> > cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.
>
> ^[0-9a-z_]$

Dat moet natuurlijk zijn:
^[0-9a-z_]+$

--
robert

Maarten Wierda
15/03/03, 16:50
Richard Rasker wrote:

> > Ik ben op zoek naar een regular expression die alleen letters [a-z],
> > cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.

[knip]

> Gewoon "[0-9]|_|[a-z]" (Dus het | pipe-symbool als 'of')?

Dankjewel. Ik heb nu als regexp "^[0-9]|[a-z]|_+$" alleen wordt een
string als "00_gebru_ikersnaam!" nu ook goed bevonden, terwijl ik alleen
letters, cijfers of underscores wil. Ik dacht dat dit kon worden
bewerkstelligd met die plus maar tevergeefs.

Weet jij de juiste expressie? Bedankt.

--
Cheers, Maarten Wierda

"Smack it! Beat it! Masturbate it!" - K.D. Cobain

Maarten Wierda
15/03/03, 17:05
robert wrote:

> > > Ik ben op zoek naar een regular expression die alleen letters [a-z],
> > > cijfers [0-9] en een underscore toelaat, de volgorde maakt niet uit.

> Dat moet natuurlijk zijn:
> ^[0-9a-z_]+$

Thanks!

--
Cheers, Maarten Wierda

"Smack it! Beat it! Masturbate it!" - K.D. Cobain