webForumDet fria alternativet

Endast a-z

PHPur PHP

6 svar · 460 visningar · startad av oskob

Medlem sedan maj 20021 558 inlägg
Frågan#1

Hej!

Undrar om det går på något sätt att ta bort alla tecken utom a-z och 0-9 ur en sträng.
Har hittat exempel på hur man anger alla tecken som ska tas bort, men jag vill vara på den säkra sidan och ta bort allt utom tillåtna bokstäver istället.

Tack på förhand!

Medlem sedan juli 200519 inlägg
#2
$string = preg_replace("/[^0-9A-Za-z]/", "", $string);
Medlem sedan nov. 200559 inlägg
#3

Doh, fel tråd.

Medlem sedan aug. 20039 340 inlägg
#4

Du kan göra på två sätt. Dels kan du ta bort allt som matchar \W. \W är inversen till \w och matchar precis allt som inte \w matchar. \w i sin tur matchar alla "ord-tecken", som a-z, 0-9, men även understreck, och internationella tecken som å, ä och ö. Det sista kan vara ett problem, och då kan du ange [^a-z\d] som matchar allt som varken är bokstäver, a-z eller siffror, och ersätter med en tom sträng.

$text = preg_replace('/\W+/e', "", $text); 
// alt.
$text = preg_replace('/[^a-z\d]+/ie', "", $text);

Plustecknen i båda exemplen matchar flera förekomster av det som uttrycket matchar, vilket gör ersättningen effektivare i detta fall. e på slutet behövs i båda exemplen för att ersätta flera förekomst på olika ställen i strängen. i i det andra exemplet gör så att uttrycket matchar oavsett skiftläge, annars hade stora bokstäver gått förlorade. \d står för siffror.

Medlem sedan maj 20021 558 inlägg
#5

Jisses. Riktigt avancerat det där! Du råkar inte veta någon begriplig dokumentation tilld et där? Den jag hittade på php.net var väldigt rörig.
Tusen tack!

Medlem sedan juni 20006 031 inlägg
#6

oskob skrev:

Jisses. Riktigt avancerat det där! Du råkar inte veta någon begriplig dokumentation tilld et där? Den jag hittade på php.net var väldigt rörig.
Tusen tack!

Här har du en bra länk om du vill läsa mer om regular expressions
http://www.regular-expressions.info/php.html

Medlem sedan maj 20021 558 inlägg
#7

Gött!
Tack för all hjälp!

136 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)