alle Steuerzeichen entfernen ?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
array
ausdruck
aussehen
code
einzeln entfernen
entfernen
ersetzen
funktion
funktioniert code
grenze
machen
manual
nehmen
string
suchen
unterschied
url
vorkommen
ziehen
zweite argument
- 
    
    Hallo
 
 ich möchte aus einem String alle Steuerzeichen (Zeilenumbruch, Tabulator, etc) entfernen
 bzw. durch ein Leerzeichen ersetzen.
 
 wie ist es "richtig" ?
 ... wie muss der "Pattern" aussehen, wie oft \s escapen (mit Backslash) ?
 ... muss ich preg_replace() nehmen oder genügt auch str_replace() dafür ?
 
 $str = preg_replace('/\s/', ' ', $str); $str = preg_replace('/(\\\s)/', ' ', $str); $str = str_replace("\s", ' ', $str);
 
 oder doch besser die Steuerzeichen einzeln entfernen ?
 
 $str = str_replace("\r", ' ', $str); $str = str_replace("\n", ' ', $str); $str = str_replace("\t", ' ', $str);
 
 und ... macht es dabei einen Unterschied, ob der String in utf-8 oder iso-8859-1 vorliegt ?
 
 
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
- 
    
    emoebel schrieb: oder einfach so, wie php.net es vorschlägt:
 Hallo
 
 ich möchte aus einem String alle Steuerzeichen (Zeilenumbruch, Tabulator, etc) entfernen
 bzw. durch ein Leerzeichen ersetzen.
 
 wie ist es "richtig" ?
 ... wie muss der "Pattern" aussehen, wie oft \s escapen (mit Backslash) ?
 ... muss ich preg_replace() nehmen oder genügt auch str_replace() dafür ?
 
 $str = preg_replace('/\s/', ' ', $str); $str = preg_replace('/(\\\s)/', ' ', $str); $str = str_replace("\s", ' ', $str);
 
 oder doch besser die Steuerzeichen einzeln entfernen ?
 
 $str = str_replace("\r", ' ', $str); $str = str_replace("\n", ' ', $str); $str = str_replace("\t", ' ', $str);
 
 und ... macht es dabei einen Unterschied, ob der String in utf-8 oder iso-8859-1 vorliegt ?
 
 $str = str_replace(array("\r", "\n", "\t"), ' ', $str);und vom ganzen
 einfach abstand halten!preg_*()
 Beitrag zuletzt geändert: 26.9.2013 15:35:20 von czibere
- 
    
    ok, Danke
 
 ich dachte bei str_replace muss dann das zweite Argument auch ein (gleich großes) Array sein
 
 $str = str_replace(array("\r", "\n", "\t"), array(' ', ' ', ' '), $str);
 
 aber wenn es so auch funktioniert,
 
 $str = str_replace(array("\r", "\n", "\t"), ' ', $str);
 
 um so besser :)
 
- 
    
    emoebel schrieb: es heißt dort
 ich dachte bei str_replace muss dann das zweite Argument auch ein (gleich großes) Array sein ...
 was nur andeuten will, dass überall wo mixed steht, kann (auch ;) ein array stehen, muss aber nicht. es gilt für alle funktionen, wo etwas vergleichbares steht.mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )
 
 thundernetworks schrieb: ich habe vielleicht etwas zu streng formuliert: 'finger weg'. was wichtig ist, ist nur so viel: überall, wo man mit str_* eine lösung erreichen kann, sollte nicht preg_* angestrebt werden (resource-schlucker!).
 Um die Grenze zwischen str_* und preg_* - Funktionen zu ziehen:
 str_replace ersetzt alle Vorkommen eines Strings in einem anderen String 
 preg_replace sucht und ersetzt einen regulären Ausdruck (RegEx) - beides aus der PHP Manual (leicht verändert)
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
