Wie beziehe ich Zeilenumbrüche in eine Suche in weniger ein?


13

Wie kann ich im Rahmen einer Suche mit weniger Zeilenumbrüchen (oder Zeilenenden) suchen?

Zum Beispiel möchte ich suchen length=9\n, aber nicht nur suchen wollen length==9 denn das würde Streichhölzer bekommen für length=90\n.

Ich benutze GNU bash, Version 4.0.33 (1) -release (x86_64-pc-linux-gnu) auf Ubuntu 9.10 (Karmic Koala)

Ich habe versucht, das freundliche Handbuch zu lesen, aber es sagte

/pattern

Suchen Sie in der Datei nach der N-ten Zeile mit dem   Muster. N ist standardmäßig 1. Die   Muster ist ein regulärer Ausdruck, wie   durch den regulären Ausdruck erkannt   Bibliothek, die von Ihrem System bereitgestellt wird. Die Suche beginnt in der zweiten angezeigten Zeile   (siehe aber die Optionen -a und -j, die   ändere das).

und ich weiß nicht, wie man darüber hinaus RTFM.


1
Suchen, die an Wortgrenzen verankert sind, können ebenfalls nützlich sein. /\<length=9\> wird "length = 9" finden, das irgendwo in einer Zeile steht, ohne "length = 90" oder "stringlength = 9". Sehen man 7 regex und man grep für mehr.
Dennis Williamson

1
Für diejenigen, die nach einer Antwort auf den Titel der Frage suchen: Ich glaube nicht, dass Sie Zeilenumbrüche in eine Suche in weniger aufnehmen können. Dies bedeutet, dass mehrzeilige Suchen in weniger nicht möglich zu sein scheinen.
drevicko

Antworten:


7

Du kannst tun:

/pattern$

Das Muster ersetzen pattern, aber die $ muss bleiben, es teilt der Suche mit, nach dem Muster und dann nach dem Ende der Zeile zu suchen.

Also machst du:

/length=9$
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.