7.2. Wie zerlege ich einen String?Antwort von Kristian KöhntoppMan kann die einzelnen Zeichen in einem String ähnlich wie ein Array ansprechen, allerdings verwendet man anstelle der eckigen Klammern [ und ] geschweifte Klammern: { und }. $str = "teststring"; $len = strlen($str); for($i=0; $i<$len; $i++) printf("Zeichen %d ist %s<br>\n", $i, $str{$i}); Diese Methode ist auch geeignet, um einen String in ein Array umzuwandeln: function stringToArray($string) { $array = array(); for($i=0; $i<strlen($string); $i++) $array[$i] = $string{$i}; return $array; } Mit Hilfe der Funktion substr() kann man Teilstrings aus einem String herausschneiden. Mit Hilfe der Funktion explode() kann man einen String an einem Trennzeichen in ein Array zerlegen. $str = "dies ist ein teststring."; $avar = explode(" ", $str); $len = count($avar); for ($i=0; $i<$len; $i++) printf("%d: %s<br>\n", $i, $avar[$i]); Dieses Beispiel zerlegt den gegebenen Teststring an den Leerzeichen und erzeugt ein Array $avar mit den Indices 0 bis 3 (4 Elementen). Kompliziertere Zerlegungen lassen sich mit Hilfe der Funktion preg_split() vornehmen. Das veraltete, weniger leistungsfähigere und langsamere split() könnte man auch verwenden. $str = "ich bin ein sehr komplizierter test, nicht wahr?"; $avar = preg_split("/[ \t.!?]+/", $str); $len = count($avar); for ($i=0; $i<$len; $i++) printf("%d: %s<br>\n", $i, $avar[$i]); Im Gegensatz zum vorhergehenden Beispiel werden hier mehrfache Leerzeichen nicht als mehrfache Trennungen gezählt und auch Satzzeichen werden zu den Trennzeichen gezählt. |
||
7.2. Wie zerlege ich einen String? http://www.php-faq.de/q/q-string-teilen.html |
||
Archiv der de.comp.lang.php-FAQ Dies ist eine Archivseite von 2008 und wurde seitdem nicht geändert. Das dclp-FAQ-Team |