Tipp: Regular Expressions mit BBEdit
Mein bevorzugter Texteditor ist BBEdit. Damit schreibe ich sämtliche HTML-, CSS-, PHP-, XML-, SQL- und Javascript-Dateien, die bei der Webentwicklung so anfallen. Eine der größten Stärken von BBEdit ist das Suchen und Ersetzen mit Hilfe von Grep, aka RegEx bzw. Regular Expressions. Ich will hier keine ausführliche Grep-Anleitung schreiben (davon gibt es im Web genug), sondern anhand einiger Beispiele den praktischen Nutzen zeigen.
Absätze
Nehmen wir an, Sie bekommen einen Wordtext, der für eine Website mit Absatz-Tags formatiert werden muss. Der normale Weg wäre, die Tags entweder per Hand einzufügen, oder aber einen Absatz zu markieren und in der HTML-Tools-Palette auf Paragraph zu klicken. Bei langen Texten beides ziemlich mühsam.
Aber es geht einfacher: Im Find & Replace-Dialog kreuzt man Use Grep an, trägt ins Search For-Feld ein
^(.*)$ins Replace With-Feld
<p>\\1</p>klickt anschließend auf Replace All – et voilà: Alle Absätze sind von Paragraph-Tags umschlossen.
Textteile fetten
Zweites Beispiel: Sie bekommen eine lange Handelnde-Personen-Liste in dieser Form:
Maria Adorf, die hübsche Tochter des Dorfschmieds, die sich in den Sohn des Bürgemeisters verliebt hat
Karl Faltenmeyer, der schmucke Nebenerwerbslandwirt, der sich mit gelegentlichem Zigarrenschmuggel ein Zubrot verdient
Trine Brunnenkresse, die heimtückische etc.
Alle Namen am Zeilenanfang (vor dem ersten Komma) sollen mit Hilfe von Strong-Tags fett gesetzt werden. Mit Grep überhaupt kein Problem: Suchen Sie nach
^(.*?),und lassen Sie es ersetzen durch
<strong>\\1</strong>,(Kurzerläuterung: Das Fragezeichen macht den Suchausdruck non greedy, ansonsten würde immer das letzte Komma der jeweiligen Zeile ausgewählt.) Mit einem simplen Tastenklick auf Replace All sind nun sämtliche Namen ohne den geringsten Aufwand fett gesetzt.
Die Grep-Suche beherrscht übrigens auch TextWrangler, der kostenlose kleine Bruder von BBEdit.
Wer mehr über dieses (für mich mittlerweile unverzichtbare) Tool erfahren möchte, sollte sich das BBEdit Grep Tutorial von Cari D. Burstein anschauen.
Ähnliche Beiträge:
qxm.de wieder erreichbar TomTom Car Kit Klebeplatten-Rückstände (Update)
Kommentare:
Bei den Kommentaren handelt es sich um fremde Inhalte, die sich „esse est percipi“ nicht zueigen macht. Verantwortlich für den Inhalt eines Kommentars ist der jeweilige Verfasser.
Für den Einstieg in RegExp empfehle ich immer www.regenechsen.de
Gerade für Einsteiger sind die Beispiele gut nachzuvollziehen.
Geht auch mit SubEthaEdit, dort auch in unterschiedlichen Dialekten (Java, Perl).
Ich suche ja nach einer Lösung, aus eine Textfile mit HTML-Code alle CCS-Schnipsel herauszufiltern. So, dass aber HTML (primär Links) erhalten bleiben. Weiß jemand was Schlaues dazu?
@Jonas: Für inline-Styles:
sstyle=„[^“]"
ersetzen mit dem Leerstring. Für style-Bereiche:
<style[^>]>[sS]?</style>
ebenfalls ersetzen mit „nix“. Je nach RegEx-Dialekt kann es kleine Abweichungen bzgl. des Escapings geben.
Alles in allem ist schwer davon abzuraten, reguläre Ausdrücke für die Arbeit an HTML zu verwenden, zumindest wenn es um das automatische Bearbeiten (z.B. als Teil einer Sicherheitsroutine für Blog-Kommentare) geht. Die populärste Antwort aller Zeiten auf der Programmierer-Website StackOverflow erklärt warum. ;-)
Kommentar schreiben:
FAQ (Häufig gestellte Fragen)
Kommentare:
- Michael Preidel zu Pasta dell’Orto
- Stefan zu Pasta dell’Orto
- Michael Preidel zu CookieCrumble Testflight jetzt auch für macOS
- Götz zu CookieCrumble Testflight jetzt auch für macOS
- Michael Preidel zu Harbor – Sicherer Hafen [Testflight]
- Henning zu Harbor – Sicherer Hafen [Testflight]
Schlagwörter
