Suchen: ([^\|]*\|[^\|]*)\|
Ersetzen in:\1\n
Ersetzen Sie jede n-te Instanz eines Zeichens durch eine neue Zeile in Notepad ++
Ich habe eine durch Pfeife begrenzte Reihe von NAME|VALUE
Paaren, die so aussehen.
Name1|Value1|Name2|Value2|Name3|Value3
Ich möchte jede zweite Instanz |
durch eine neue Zeile ersetzen, damit ich so etwas habe.
Name1|Value1 Name2|Value2 Name3|Value3
Mein Problem ist nicht die New-Line, da ich weiß, dass ich dafür verwenden kann \r\n
, sondern eher den Regex-Teil, der nur jede zweite Instanz von |
.
2 Antworten auf die Frage
I want to replace every second instance of | with a new line
Menu "Search" > "Replace" (or Ctrl + H)
Set "Find what" to
(.*?\|.*?)[\|]
Set "Replace with" to
\1\r\n
Enable "Regular expression"
Click "Replace All"
Before:
Name1|Value1|Name2|Value2|Name3|Value3
After:
Name1|Value1 Name2|Value2 Name3|Value3
Notes:
The above assumes you are editing a text file with Windows EOLs,
\r\n
.If you are using files with different EOLs you can convert them to Windows EOLs using Menu "Edit" > "EOL Conversion".
If you aren't working with Windows EOL, and you don't wish to convert them, use the following instead:
Use
\n
instead of\r\n
for Unix/OS X EOLsUse
\r
instead of\r\n
for Mac OS (up to version 9) EOLs
Further reading
Verwandte Probleme
-
14
Regex-Tool für Linux
-
1
Deaktivieren der Hervorhebung von Klammern in Notepad ++
-
2
Schließen von Notepad ++ - Registerkarten beim Schließen der Anwendung
-
3
Kann nicht herausfinden, warum diese Regex nicht zutrifft
-
2
Entfernen von Zeilenumbrüchen aus einer RTF-Datei mit sed
-
10
Wie kann die Schriftgröße in Notepad ++ geändert werden?
-
2
Warum funktioniert Strg + F4 in Notepad ++ nicht?
-
5
Grep-Tool für XML
-
6
Wie kann ich Unicode-Text in Notepad ++ bearbeiten?
-
4
Wozu benutzt man ? in grep befehl .. und praktischen einsatz