Hallo allerseits
Da das Problem fehlender Zeichen bei runden oder eckigen Klammern (…), […], aber auch bei einzelnen fehlenden Anführungszeichen »…« doch von grösserem praktischem Nutzen sein kann, habe ich noch nachgedacht, wie ein direkter Grep diese Stellen finden könnte. Also ohne den Umweg über das Einfärben, was doch etwas umständlich ist.
Hier nun jeweils drei Grep-Suchen für fehlende öffnende Klammern bzw. Anführungszeichen und drei Grepsuchen für fehlende schliessende Klammern bzw. Anführungszeichen.
Fehlende Anfangszeichen Findet …) \A
[^(]*?
(\([^(]*?\)[^(]*?)*
?\) Vom Anfang des Textabschnitts suche ich also eine
schliessende Klammer ), ohne dass davor eine
öffnende Klammer ( steht. Dabei werden
paarweise auftretende Klammerausdrücke (…) nicht berücksichtigt.
Findet …] \A[^[]*?(\[[^[]*?\][^[]*?)*?\]
Findet …« \A[^»]*?(»[^»]*?«[^»]*?)*?«
Fehlende Schlusszeichen Findet (… \((?![^(]+\))
Hier kann ich einen negativen Lookahead einsetzen, da die Anzahl der Zeichen im Lookahead nicht fix sein muss.
Findet [… \[(?![^[]+\])
Findet »… »(?![^»]+«)
Die problematischen Stellen müssen natürlich einzeln manuell korrigiert werden. Bei den fehlenden Anfangszeichen wird der
ganze Textstring bis zum vereinzelten Schlusszeichen, z. B. der schliessenden Klammer, markiert. Das problematische Zeichen findet sich also am Schluss und kann wenn nötig durch Klick auf Rechtspfeil der Tastatur gefunden werden (der Cursor befindet sich dann unmittelbar hinter dem vereinzelten Schlusszeichen).
Vielleicht sind diese Greps ja dem einen oder der anderen nützlich. Getestet habe ich es an einem kurzen Beispieltext.
Und noch was: Zurzeit läuft der
Greenpeace Photo Award (
http://www.photo-award.ch), und ich freue mich, wenn ihr dort mal vorbeischaut und eure Stimme abgebt, siehe auch
http://www.hilfdirselbst.ch/..._P499522.html#499522 Tja, das wärs für diesmal.
Einen schönen Tag und Grüsse
Marco