Thread Probleme bei Datei Aufsplitten
(9 answers)
Opened by KA2065 at 2005-09-26 12:42
Man sollte noch auf den Unterschied zwischen
Code: (dl
)
split / /, $foo und Code: (dl
)
split " ", $foo hinweisen. Die erste Versionen teilt den String $foo an einzelnen Leerzeichen auf, d.h. wenn irgendwo mehrere Leerzeichen aufeinander folgen, dann werden leere Felder fuer den Raum "zwischen den Leerzeichen" zurueckgegeben. Tabs werden gar nicht als Trenner genommen. Die Version mit " " hat dagegen eine besondere Bedeutung: Es werden Folgen von Whitespace (also Leerzeichen und Tabs) zusammengefasst, und fuehrender Whitespace am Anfang einer Zeile wird automatisch uebersprungen. split() arbeitet in diesem Fall also genauso wie das Programm awk. Die Variante Code: (dl
)
split /\s+/, $foo entspricht eher dem zweiten Fall, aber fuehrender Whitespace fuehrt hier zu einem leeren ersten Feld. Fuer das angegebene Problem und aehnliche Faelle, in denen Daten durch einfache oder mehrfache Leerzeichen oder Tabs getrennt sind, ist es also definitiv besser, split " ", $temp1 zu benutzen. View full thread Probleme bei Datei Aufsplitten |