ugrás a tartalomhoz

Speciális karakterek eltávolítása, ékezettelenés

Johnny · 2008. Már. 8. (Szo), 17.25
Sziasztok!

Egy olyan függvényt, megoldást keresek, amely az oldalamon a felhasználó által beküldött stringet átalakítja úgy, hogy az összes ékezetes betűt átalakítja az angol abc-nek megfelelőre (á->a, ű->u, stb...), valamint az egyéb "speciális" karaktereket (pl. #,+"! stb) egyszerűen eltávolítja.

Ha van valakinek megoldása rá, akkor azt megköszönöm.
 
1

keresheted

DsA · 2008. Már. 8. (Szo), 17.47
szerintem kersheted :D mert szvsz nincs ilyen :D
erre maximum tudsz írni egy fgv-ttalán itt találsz vmit
http://www.prog.hu/kereses/?expr=%E9kezetek&ndid=4670&oc=20
2

Lehetne...

janoszen · 2008. Már. 8. (Szo), 17.59
Akár lehetne is. Egyébként nézz valami 7-bit aproximation algoritmus után, hátha át tudod alakítani.
5

De van

Joó Ádám · 2008. Már. 8. (Szo), 21.27
iconv('utf-8', 'ASCII//TRANSLIT//IGNORE', $character);
6

Jó tudni

Török Gábor · 2008. Már. 8. (Szo), 22.28
Mindig tanul az ember (:
3

str_replace, preg_replace

Török Gábor · 2008. Már. 8. (Szo), 18.22
  1. // Input  
  2. $input_str = "árvíztűr?##őf!-úrógép";  
  3.   
  4. $accented = array"á""é""í""ó""ö""ő""ú""ü""ű" );  
  5. $mask = array"a""e""i""o""o""o""u""u""u" );  
  6.   
  7. // Ékezet csere  
  8. $output_str = str_replace$accented$mask$input_str );  
  9. // Nem alfanumerikus törlése  
  10. $output_str = preg_replace("/[^\w]+/i"""$output_str );  
  11.   
  12. print( $output_str . "\n" ); // arvizturofurogep  
4

Köszi

Johnny · 2008. Már. 8. (Szo), 18.45
Köszönöm szépen, rengeteget segítettél vele!
7

tagadás helyett

lacy · 2008. Már. 9. (V), 23.35
kis megjegyzés: ^\w helyett használhatunk \W -t is.

\w = any "word" character
\W = any "non-word" character

másrészt én az ékezettelenítést a következőképp végezném, sztem rövidebb...:
  1. $input = "árvíztűrő tükörfúrógép";  
  2. print $input = strtr($input,"áéíöőóúüű","aeiooouuu"); //arvizturo tukorfurogep  
8

[^\w...] != [\W...]

Török Gábor · 2008. Már. 9. (V), 23.57
Ebben az esetben éppenséggel használhatunk. Különbség, amiért a példában karakterosztállyal is adtam meg a szűrni kívánt karakterek halmazát (egyszerűen \W helyett), hogy így bővíthető. Tegyük fel, ha minden speciális karaktert plusz a kis "g" betűt is szeretnéd szűrni, akkor [^\wg]-re módosítod az osztályt, \W típussal már kényelmetlenebb, lévén a ^ metakarakter a teljes osztályt negálja, a \W pedig értelemszerűen csak a \w-t.
9

1*ű...http://sempai.web44.n

Dev.Null · 2013. Dec. 14. (Szo), 16.36
1*ű...

Link torolve - janoszen
10

Több, mint 5 éves témában

Pepita · 2013. Dec. 14. (Szo), 23.22
nagyon kellett neked egy, az oldaladra mutató link? :)

Küldenél inkább be komolyabb cikket, ha az "Ádámon is átmegy", már jelent valamit... Ez így viszont - szerintem - sima spam.
12

Netto hulyeseg

janoszen · 2013. Dec. 15. (V), 10.41
Amit irsz a blogpostodban netto hulyeseg. Ennel joval tobb fajta ekezetes betu van es igen, van olyan, hogy meg Magyar weboldalon is hasznaljak azokat, pl ha valaki nem Magyar billentyuzettel ir.
13

+1

Pepita · 2013. Dec. 15. (V), 11.37
Link torolve - janoszen
11

Azt hiszem, hogy az iconv

deejayy · 2013. Dec. 14. (Szo), 23.35