Suchwort in vim?


Antworten:


207

so was:

/\<word\>

\<bedeutet Wortanfang und \>bedeutet das Ende eines Wortes,

Hinzufügen des Kommentars von @ Roe:
VIM bietet hierfür eine Verknüpfung. Wenn Sie bereits ein Wort auf dem Bildschirm haben und andere Instanzen davon finden möchten, können Sie den Cursor auf das Wort setzen und drücken '*', um in der Datei vorwärts oder '#'rückwärts zu suchen.


3
Wenn Sie den Mauszeiger über ein Wort
— bewegen

1
Warum ist das vorteilhaft gegen nur zu tun: / Wort
— Jimh

3
@semja: Nehmen wir an, Sie haben eine Variable 'data' und deren gültige Angabe 'data_valid'. Wenn ich nur nach 'data', aber nicht nach 'data_valid' suchen möchte, erledigt '/ data' den Job nicht. Ich muss vim sagen, wo ich aufhören soll , dem Muster zu entsprechen.
— Nathan Fellman

Dies schlägt im folgenden Beispiel fehl: Eine Lösung finden 1word1Sie unter stackoverflow.com/a/22148017/2609994 .
— LSchueler

Gibt es eine vimKonfiguration, mit der genau nach Wörtern gesucht werden kann, ohne dass die Suchzeichenfolge mit \<und \<Zeichen umbrochen wird?
— Truthadjustr

77
  1. vim Dateiname
  2. Drücken Sie /
  3. Geben Sie das Wort ein, nach dem Sie suchen möchten
  4. Drücken Sie Enter

2
Könnte jemand erklären, warum dies möglicherweise negative Stimmen erhalten hat? Hat für mich gearbeitet.
— Kiee

13
Weil das OP darum gebeten hat, gezielt zu suchen "word". Die hier veröffentlichte Lösung sucht im Wesentlichen nach %word%, ob thiswordisawesomeoder word56oder 26word.
— Jguy

9
Auch, weil das OP ausdrücklich angegeben hat, dass sie über den /Befehl Bescheid wissen . Daher ist diese Antwort überhaupt nicht hilfreich.
— cmaster

27

Wenn Sie in Ubuntu arbeiten, gehen Sie folgendermaßen vor:

  1. Drücken Sie / und geben Sie das Wort ein, um zu suchen
  2. Um vorwärts zu suchen, drücken Sie die UMSCHALTTASTE mit * Taste
  3. Um rückwärts zu suchen, drücken Sie die UMSCHALTTASTE mit der #Taste

1
Wie kann ich das gesuchte Wort hervorheben?
— Jorge Saraiva

3
@jorgesaraiva: Zunächst einmal erhalten Sie wahrscheinlich schneller eine Antwort, wenn Sie eine neue Frage stellen (anstatt 3 Monate, nachdem Sie sie gestellt haben, darauf zu warten, dass jemand über diesen Kommentar stolpert). Zweitens können Sie :set hlsin Vim Ihr Suchergebnis hervorheben. Um die Hervorhebung auszuschalten, tun Sie:set nohls
— Nathan Fellman

1
Dies funktioniert wirklich nur, wenn das erste Ergebnis /wordgenau wordstattword.+
— Puschkin

Dies funktioniert bei einer AWS Ubuntu 18.04-Instanz nicht. Verwenden von Windows Git-Bash, um auf den Ubuntu-Server zu ssh, wenn dies relevant ist. seltsam.
— CodingMatters

21

Für die einfache Suche:

  • / pattern - Suche nach Muster vorwärts
  • Muster - Suche rückwärts
  • n - Vorwärtssuche wiederholen
  • N - rückwärts wiederholen

Einige Variablen, die Sie möglicherweise festlegen möchten:

  • : set ignorecase - Groß- und Kleinschreibung wird nicht berücksichtigt
  • : set smartcase - Anwendungsfall, wenn Kappen verwendet werden
  • : incsearch setzen - Übereinstimmung als Suche anzeigen

3
Dies ist nicht das, was das OP verlangt.
— Alle Arbeiter sind
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.