Mit eienr Funktion mehrere Zeichen ersetzen?
mortimer
- php
Geht das?
Ich habe einen string mit zeichen "ÄäÖöÜü_-#'..." und möchte es auf einen anderen string anwenden und immer wenn ein solches zeichen erscheint es durch ein (z.B.) X ersetzen....
ich finde keien funktion die das kann... in einem durchgang...
ciao
Hallo,
warum machst du das nicht mit:
str_replace
du hast eine Variable: sagen wir mal $Ort.
Der heißt jetzt München.
Also
print "$Ort";
Ausgabe Bildschirm: München
jetzt hier weiter:
$Ortohneumlaut = str_replace(array('Ä','ä','Ö','ö','Ü','ü'),array('Ae','ae','Oe','oe','Ue','ue'),$Ort);
print "$Ortohneumlaut";
Ausgabe Bildschirm: Muenchen
Vielleicht kann dir das helfen.
Gruss
Olli
Moin!
$Ortohneumlaut = str_replace(array('Ä','ä','Ö','ö','Ü','ü'),array('Ae','ae','Oe','oe','Ue','ue'),$Ort);
ich würde die arrays aus bersichtsgründen extra schreiben:
$match = array('Ä','ä','Ö','ö','Ü','ü');
$replace = array('Ae','ae','Oe','oe','Ue','ue');
$Ortohneumlaut = str_replace($match,$replace,$ort);
grüße aus thüringen
ichen
Hi
Danke danke an euch beide...
Das mit den Arrays hat klasse funktioniert! =)
ciao
Huhu ichen
ich würde die arrays aus bersichtsgründen extra schreiben:
$match = array('Ä','ä','Ö','ö','Ü','ü');
$replace = array('Ae','ae','Oe','oe','Ue','ue');
ich würde das aus übersichtsgründen als assosziatives Array schreiben:
$map = array(
'Ä' => 'Ae',
'ä' => 'ae',
'Ö' => 'Oe',
'ö' => 'oe',
'Ü' => 'Ue',
'ü' => 'ue',
);
$Ortohneumlaut = str_replace(array_keys($map), array_values($map), $ort);
Da kann es einem auch nicht passieren, dass ein Array versehentlich mehr Elemente als das andere hat.
Viele Grüße
lulu