/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Preg_match
Fra : Lasse Jensen


Dato : 23-06-06 15:54

Davs :)

Jeg har en preg_match som ser sådan her ud;

preg_match("/^[a-zA-Z]+$/", $fornavn)

Den sørger for navnet kun kan indeholde bogstaver.
Desværre anser den ikke æ, ø og å som bogstaver, da den kun går til z.
Hvordan løses dette? Vi er jo i Danmark, hvor mange har navne, som
retter sig efter det danske alfabet. Udover det vil jeg også gerne have
en "-" (bindestreg) med, da det også indgår i nogle navne.

Hvordan kommer den så til at se ud?

På forhånd tak :)

Mvh. Lasse Jensen

 
 
phpartikler.dk (23-06-2006)
Kommentar
Fra : phpartikler.dk


Dato : 23-06-06 17:24


> Jeg har en preg_match som ser sådan her ud;
>
> preg_match("/^[a-zA-Z]+$/", $fornavn)
>
> Den sørger for navnet kun kan indeholde bogstaver.
> Desværre anser den ikke æ, ø og å som bogstaver, da den kun går til z.
> Hvordan løses dette? Vi er jo i Danmark, hvor mange har navne, som retter
> sig efter det danske alfabet. Udover det vil jeg også gerne have en "-"
> (bindestreg) med, da det også indgår i nogle navne.
>
> Hvordan kommer den så til at se ud?
>


Alt hvad står mellem [ og ] er "lovligt". Så det er bare at tilføje:
/^[-a-zA-Zæøå]+$


(Bemærk at bindestregen er placeret først, da den ellers tror at der er tale
om en "range" (ligesom a-z eller 0-9), man kunne også bare backslashet den
og placeret den hvor man har lyst)



phpartikler.dk (23-06-2006)
Kommentar
Fra : phpartikler.dk


Dato : 23-06-06 17:29


> Alt hvad står mellem [ og ] er "lovligt". Så det er bare at tilføje:
> /^[-a-zA-Zæøå]+$
>


Ups. Med ovenstående virker ÆØÅ (med stort) ikke. Det ville nok være lige så
smart at smide en i-modify'er i enden så den søger case insensitive. Så kan
du nøjes med:

/^[-a-zæøå]+$/i



Michael Rasmussen (23-06-2006)
Kommentar
Fra : Michael Rasmussen


Dato : 23-06-06 17:29

On Fri, 23 Jun 2006 18:23:31 +0200, phpartikler.dk wrote:

> (Bemærk at bindestregen er placeret først, da den ellers tror at der er
> tale om en "range" (ligesom a-z eller 0-9), man kunne også bare
> backslashet den og placeret den hvor man har lyst)
Ikke korrekt. Placering først har samme effekt, som placering til sidst.
--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917


phpartikler.dk (23-06-2006)
Kommentar
Fra : phpartikler.dk


Dato : 23-06-06 17:40


"Michael Rasmussen" <mir@miras.org> skrev i en meddelelse
news:pan.2006.06.23.16.29.26.103938@miras.org...
> On Fri, 23 Jun 2006 18:23:31 +0200, phpartikler.dk wrote:
>
>> (Bemærk at bindestregen er placeret først, da den ellers tror at der er
>> tale om en "range" (ligesom a-z eller 0-9), man kunne også bare
>> backslashet den og placeret den hvor man har lyst)
> Ikke korrekt. Placering først har samme effekt, som placering til sidst.
> --
> Hilsen/Regards
> Michael Rasmussen
> http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917
>

Jaja, men pointen er stadig den samme, pas på med bindestreg inde i en
character-class da den tror det er en "range" hvis man ikke placere den
først (eller sidst) (og ellers tilføjet evt. en backslash).



Lasse Jensen (23-06-2006)
Kommentar
Fra : Lasse Jensen


Dato : 23-06-06 20:52

phpartikler.dk skrev:
>
>
> Alt hvad står mellem [ og ] er "lovligt". Så det er bare at tilføje:
> /^[-a-zA-Zæøå]+$
>

Mange tak, jeg kigger på det :)

Jeg troede ikke det var så simpelt, men det var da meget lækkert :)

Mvh. Lasse Jensen

Michael Rasmussen (23-06-2006)
Kommentar
Fra : Michael Rasmussen


Dato : 23-06-06 17:28

On Fri, 23 Jun 2006 16:54:21 +0200, Lasse Jensen wrote:

>
> Hvordan kommer den så til at se ud?
Simpelt, tilføj de tilladte tegn: /^[a-zA-ZæøåÆØÅ-]+$/
--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917


Lasse Jensen (23-06-2006)
Kommentar
Fra : Lasse Jensen


Dato : 23-06-06 20:52

Michael Rasmussen skrev:
> On Fri, 23 Jun 2006 16:54:21 +0200, Lasse Jensen wrote:
>
>
>>Hvordan kommer den så til at se ud?
>
> Simpelt, tilføj de tilladte tegn: /^[a-zA-ZæøåÆØÅ-]+$/

Tak for svaret :D

Mvh. Lasse Jensen

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste