Thread Leerzeichen und Anderes aus Dateinamen entfernen (22 answers)
Opened by rasidrasid at 2014-01-09 10:05

clms
 2014-01-09 15:43
#172925 #172925
User since
2010-08-29
373 Artikel
BenutzerIn
[default_avatar]
2014-01-09T13:06:21 Muffi
Ich hab tr schon ewig nicht mehr benutzt.
Irgendwie hats wenig Mehrwert zu s, ist dafür aber viel eingeschränkter.
Wenn du jetzt beliebig viele dieser Zeichen durch EIN "_" ersetzen willst darfst du schon wieder alles umbaun.

Klar, Regex sind deutlich mächtiger als Transliterationen. Ich benutze tr/// deshalb auch nur selten.

Aber wenn Du kontextlos Zeichen ersetzen oder filtern willst ist tr/// nicht nur deutlich schneller sondern IMO auch einfacher aufzusetzen als s///.

Die Fälle, wo ich tr/// einsetze umfassen deshalb u.a.
  • unerwünschte Zeichen aus Filenamen u.ä. entfernen (wie hier gewünscht)
  • Akzente entfernen: tr/áàéèÀô/aaeeAo/
  • ROT13: tr/a-zA-Z/n-za-mN-ZA-M/

Implementier die letzten beiden Fälle mal mit Regex ;-|

BTW: Mehrere unerwünschte Zeichen hintereinander durch ein einzelnes '_' zu ersetzen funktioniert ganz einfach mit dem s-Modifier - wie in meinem ursprünglichen Post angegeben.

View full thread Leerzeichen und Anderes aus Dateinamen entfernen