19. september 2007 - 15:30
Der er
3 kommentarer og
1 løsning
check af europæisk navn
Jeg mangler en regexp til check af navn.
Desuden, navnet må kun indeholde bogstaver, mellemrum, cifre og en apostrof. Bogstaver skal være bogstaver i de vesteuropæiske sprog, og dvs. foruden åæø også ä, ö, ü , ï, é,è, ê, ñ, à, á, í osv. Kan man klare alle disse i een regexp, eller skal der laves forskellige til hver culture?
19. september 2007 - 18:51
#1
Lidt håbløst projekt i betragtning af hvor mange forskellige måder et navn kan skrives på!
Du kan dog tjekke for "ulovlige tegn" med denne (hvorfor mener du at et ciffer er et lovligt tegn i et navn?):
[^a-zæøåäöüïéèêñàáí 0-9'-]
Hvis denne matcher på din streng er der et ulovligt tegn i denne (husk at sætte ingore case på din match).
Det er muligt at \w faktisk dækker samtlige bogstaver inklusive accenter, men det afhænger så i hvert fald af både programmerings-sprog og locale.
19. september 2007 - 20:03
#2
Mit check af navnet skal kun udelukke "#¤%+[?&..." osv og kun tillade de nævnte bogstaver, cifre og apostrof. Kan nu godt se, at min tekst kunne antyde andre checks.
I min applikation er cifre lovlige som del af navnet. Jeg må lege lidt videre med din exp - tak for hjælpen og læg et svar.
Ved nærmere eftertanke så skal den regexp ikke afhænge af locale, da navne næppe er entydigt forbundet med et sprog/locale.