2010-02-03 11 views

Antwort

5

Null-Breite Blick hinter Behauptung

\ "Wie kann ich nach‚n‘ohne vorangestelltes‚\ r‘in vim?"

/\r\@<!\n 

Wie beurteilen Sie diese Vorkommen mit "\ r \ n" suchen und ersetzen?

:%s/\r\@<!\n/\r\n/gc 

Entfernen Sie das letzte "c", wenn Sie jedes Spiel ohne Bestätigung akzeptieren möchten.

Edit: Allerdings, wenn Sie eine Antwort wünschen, dass Sie sich erinnern können, wie man ohne tun, benutzt zu haben vorausschauen/hinter eine Milliarde Mal Behauptungen, siehe Jackson Millers Antwort. Manchmal ist es besser, Ihr Problem zu vereinfachen und Werkzeuge zu verwenden, die nicht erfordern, dass Sie das Handbuch ständig lesen :)

+0

Die Suche hat den Trick für mich gemacht. BTW, Zeilenenden können geändert werden mit: e ++ ff = dos, dann: w –

+0

wow, ich wusste nicht, Vim unterstützt Look-Behind, cool! – calid

+0

Hey, ich mag deinen Weg besser Merlyn. Ich tendiere dazu, es mit dem zu tun, was ich weiß. –

3

Wie wäre es, \ r \ n mit \ n und dann \ n mit \ r \ n zu ersetzen?

Sollte so etwas wie:

:%s/\r\n/\n 
    :%s/\n/\r\n 
2

alle Zeilenenden zu ändern, die r \ n \, um \ n verwenden

:%s/\r$// 

Dies wird durch Newline für alle \ r Zeichen gefolgt suchen und ersetzen sie durch Neue-Zeile nur

2

Verwenden eines Dienstprogramms wie dos2unix oder unix2dos die Zeilenenden in das gewünschte Format zu konvertieren. Es gibt native Implementierungen dieser Dienstprogramme für Unix- und Windows-Systeme.

Verwandte Themen