Search and Add, statt Search and Replace

@DeusoftheWired: Das ist es! Könntest du mir kurz noch verraten wie ich mit /t ersetze? Also wich das suchen müsste?
 
Du brauchst einen Texteditor wie Notepad++, der mit nicht-druckbaren Zeichen wie dem Tabulator umgehen kann.

Suchen nach: LeerzeichenGleichhheitszeichenLeerzeichen
Ersetzen durch: \t

suchenersetzenhinzufügennotepad++.png
 
Das kannst du aber mit Suchen und Ersetzen im Notepad++ einfacher haben.

Einfach den "Suchmodus" auf "Reguläre Ausdrücke" (oder "Regular expression") stellen, und dann danach suchen:

Code:
^((.*?) = .*?)$

Und dadurch ersetzen:

Code:
$1 - $2

Mehr sollte es nicht sein und ist weitaus weniger Aufwand, als hier erst mit Excel-Export anzufangen.
 
  • Gefällt mir
Reaktionen: PoD-BoT, DeusoftheWired und ProGamer
Exterior schrieb:
Das kannst du aber mit Suchen und Ersetzen im Notepad++ einfacher haben.

Einfach den "Suchmodus" auf "Reguläre Ausdrücke" (oder "Regular expression") stellen, und dann danach suchen:

Code:
^((.*?) = .*?)$

Und dadurch ersetzen:

Code:
$1 - $2

Mehr sollte es nicht sein und ist weitaus weniger Aufwand, als hier erst mit Excel-Export anzufangen.

warst etwas schneller, bin noch nicht geübt im RegEx und musste rumprobieren.

Bin auf folgendes gekommen:
RegEx: (.*)=.*$
Ersetzen durch: $0 - $1

zur Erklärung für den Threadersteller:
die klammern ( ) erstellen einen zwischenspeicher von dem, was darin gematched wird und speichern das in $1
Der Punkt sagt, dass beliebige Zeichen akzeptiert werden sollen.
Der Stern, dass es beliebig häufig passieren soll.
Dadurch speichert Notepad++ alles vor dem Gleichheitszeichen in $1, den RegEx selbst in $0 (und bei dem Fall von Exterior noch mal in $2)
Zusätzlich hat der Fall von Exterior mit den Fragezeichen die Abfrage, ob vor und nach dem Gleichheitszeichen überhaupt etwas steht. Dadurch würde der RegEx leere angaben auch matchen.
Das $ beim regEx am Ende steht für das Zeilenende.

Hoffe das Hilft soweit. Im Prinzip sollten beide Lösungen funktionieren. Das von Exterior deckt eventuell Spezialfälle ab
 
  • Gefällt mir
Reaktionen: PoD-BoT
Mit Word Mustersuche könnte das wohl recht leicht gehen. Wie genau häöngt dann aber von der Variabilität der zu ersetzenden Begriffe ab.
 
Exterior schrieb:
Das kannst du aber mit Suchen und Ersetzen im Notepad++ einfacher haben.

Einfach den "Suchmodus" auf "Reguläre Ausdrücke" (oder "Regular expression") stellen, und dann danach suchen:

Code:
^((.*?) = .*?)$

Und dadurch ersetzen:

Code:
$1 - $2

Mehr sollte es nicht sein und ist weitaus weniger Aufwand, als hier erst mit Excel-Export anzufangen.

Vielen lieben Dank. Das war wohl die am einfachsten aussehende Lösung. Danke an alle, die sich hier die Arbeit gemacht haben. Btw. Ich habe heraus gefunden, dass es mittlerweile 3000 Zeilen sind. :P

Also wurde mir hier echt der Tag gerettet!!
 
Zusätzlich hat der Fall von Exterior mit den Fragezeichen die Abfrage, ob vor und nach dem Gleichheitszeichen überhaupt etwas steht. Dadurch würde der RegEx leere angaben auch matchen.

Fast alles richtig, bis auf das hier zitierte.
Die Fragezeichen machen den Stern "ungierig". Der Stern ist von Natur aus gierig und würde bis zum letzten Vorkommen der Folge-Bedingung matchen, solange es der RegEx erlaubt. Kannst dich darüber gern mal belesen, am besten nach "regex greedy" suchen. Das Fragezeichen hat in diesem Kontext eine völlig andere Bedeutung als unter normalen Umständen. Allerdings ist diese Maßnahme bei dem Regex eher unnötig und schon fast sinnlos, das ist nur wegen meiner Gewohnheiten drin.

Kleines Beispiel:

Code:
String: 'Hallo Welt;Das ist ein Test; noch etwas Text;';

Ziel: Den gesamten Text vor dem ersten Semikolon bekommen.

Regex 1: /(.*);/
Ergebnis: "Hallo Welt;Das ist ein Test; noch etwas Text"

Regex 2: /(.*?);/
Ergebnis: "Hallo Welt"

--> Wenn der Stern nicht gierig ist, bricht er die
Suche beim ersten Auftreten der Folgebedingung ab, ansonsten bei der letzten.
 
  • Gefällt mir
Reaktionen: ProGamer, halwe und PoD-BoT
Zurück
Oben