G2Petter Skrevet 2. mars 2008 Skrevet 2. mars 2008 (endret) Jeg har googlet, men har ikke klart å finne ut av det. Jeg er på jakt etter et regexp som matcher a-å, a-Å, 0-9 og mellomrom. Tegnsettet er UTF-8 hvis det har noe å si. Endret 2. mars 2008 av G2Petter
Ernie Skrevet 2. mars 2008 Skrevet 2. mars 2008 /^[a-zA-ZæøåÆØÅ0-9 ]*$/u Utestet og forutsetter at filen er lagret som UTF8.
G2Petter Skrevet 2. mars 2008 Forfatter Skrevet 2. mars 2008 Jeg får den ikke til å fungere. Det kan hende den er riktig. Jeg har strippet vekk alt annet for å teste den med denne koden: if (ereg("/^[a-zA-ZæøåÆØÅ0-9 ]+$/u", "abc")) { echo "Success"; } else { echo "Fail"; } Har du eller noen andre lyst til å forklare hva de forskjellige delene av uttrykket gjør. Jeg lurer spesielt på "/"-en i starten. Så vidt jeg kan forstå betyr "*"-en at uttrykket skal gjentas ingen eller flere ganger. Siden jeg ikke vil åpne for tomme strenger byttet jeg den ut med en "+". Stemmer det?
Ernie Skrevet 2. mars 2008 Skrevet 2. mars 2008 (endret) Nå er ereg på veg ut da (fjernes i PHP6), så jeg tenkte mer i rettning preg_* Uannsett, / er delimiter, ^ definerer at det skal være fra starten av strengen, $ at det skal gjelde helt til slutten, [] definerer klasse med tegn, * at det skal finnes null, en eller flere av den klassen, og sist men ikke minst sier den u-en (som er en «pattern modifyer») på slutten der at det er snakk om utf8. Hvis du ønsker at det skal være minst et tegn så vil det være helt korrekt å bytte ut * med + ja. Endret 2. mars 2008 av Ernie
G2Petter Skrevet 2. mars 2008 Forfatter Skrevet 2. mars 2008 Jeg brukte ereg fordi tutorialene jeg kom over brukte det. Med preg_match fungerer det som en drøm. Takk skal du ha.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå