Notepad++: verschieden lange Strings mit Anführungszeichen versehen?

sonderdings  29.08.2023, 10:43

Geht's dir um ALLE Zeilen (oder fast alle und die paar, bei denen es nicht sein soll, findest du schnell)?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Suchen und Ersetzen (Strg + H), da klickst du unten "Reguläre Ausdrücke", dann bei "Suchen nach":

^(\d+)$

und bei "Ersetzen durch":

'$1',
hofmannm2000 
Fragesteller
 29.08.2023, 11:45

..und ist einfach für mich...

0
sonderdings  29.08.2023, 12:01

Kleine Erklärung dazu: "\d" bedeutet "ne Ziffer", das "+" dahinter bedeutet "das soeben Genannte (also 'ne Ziffer') mindestens 1x, beliebig oft". "^" ist "Zeilenanfang", "$" ist "Zeilenenende", und die Klammern bedeuten, dass Notepad++ sich das Gefundene merkt, um es dann hinterher mit $1 wieder einzufügen.

Kleiner Tipp: Wenn du alle Zeilen behandeln möchtest, und nicht immer ausschließlich Ziffern drin sind, kannst du statt "\d" ("ne Ziffer") auch einen Punkt "." eingeben ("irgendein Zeichen").

1

Mit Notepad wohl nur, wenn es ein Programmierplugin gibt.

Ich würde es mit einem Macro machen in Word oder LibreOffice. Da die völlig verschieden funktionieren, wähle bitte zuerst eines aus und mache Dich mit der Makro Umgebung vertraut. Bei MS wäre es VBA, bei LO kannst Du wählen.

sonderdings  29.08.2023, 10:42

Hier geht's um Notepad++, nicht um Notepad.

1
sonderdings  29.08.2023, 10:51
@Mauritan
Ich weiß, denn sonst hätte ich nicht von Plugins gesprochen.

Aber wenn du das weißt, dann weißt du doch auch, dass das sehr wohl damit geht, und sei es mit Regex-Search-Replace.

0
Mauritan  29.08.2023, 12:19
@sonderdings

"replace"?! Offenbar wollte der FS nicht mehr.

Ich dachte, es ginge darum, dass die Strings verschiedene Länge haben und man jeweils ans Ende ein Zeichen neu setzen sollte.

ok, dann ist das so.

0
sonderdings  29.08.2023, 13:38
@Mauritan
"replace"?! Offenbar wollte der FS nicht mehr.

Die Aussage verstehe ich jetzt leider überhaupt nicht, hilfst du mir auf die Sprünge?

0
Mauritan  29.08.2023, 15:25
@sonderdings

Wenn ich "replace" also "ersetzen" verwende, so ersetze ich ein Zeichen durch ein anderes. Es ist eine Suchoperation, die im Grunde jedes Programm kann, dass ein bisschen etwas drauf hat.

Möchte ich hingegen Zeichenketten verschiedener Länge "umhüllen", also etwa unter Anführungszeichen setzen oder eine Klammer davor und danach setzen, muss ich eine Vorprüfung schalten, welche Zeichen zusammenhängend wären.

Also

ab unterscheiden von abc

Im ersten Fall muss ich an erste und vierte im zweiten Fall an erste und 5. Stelle schreiben. Zweifellos leicht lösbar so eine Abfrage, dennoch ist sie fehlerlastig und erst wenn man das einmal laufen lässt, schlägt man sich an die Stirn, was man diesmal wieder übersehen hat. Zumindest ich, smile.

0
sonderdings  29.08.2023, 17:13
@Mauritan
Wenn ich "replace" also "ersetzen" verwende, so ersetze ich ein Zeichen durch ein anderes.

Nicht unbedingt, ich kann es auch durch sich selber ersetzen oder durch mehrere Zeichen oder, wie man in den anderen Antworten sehen kann, durch ein Anführungszeichen, sich selber in einer Capture Group und noch ein Anführungszeichen. ;-)

erst wenn man das einmal laufen lässt, schlägt man sich an die Stirn, was man diesmal wieder übersehen hat.

Daher nie ohne nachzudenken auf "Alle ersetzen" klicken.

Zumindest ich, smile.

Ich schon auch, keine Sorge. :-D

0
Mauritan  29.08.2023, 21:24
@sonderdings

Ja, schon klar. Ich ging irrtümlich davon aus, dass man dynamisch einfügen wolle. Das ist aufwändiger.

1