Wenn ich in Vim eine Suche durchführen möchte, die mit "planA" oder "planB" übereinstimmt, weiß ich, dass ich dies tun kann:
/plan[AB]
Dies funktioniert, weil der reguläre Ausdruck entweder A oder B als Zeichensatz zulässt.
Aber wie kann ich eine von zwei vollständigen Zeichenfolgen angeben? Zum Beispiel "planetAwesome" oder "planetTerrible"?
Dies wird mit beiden übereinstimmen, zusammen mit "planetAnythingHereAsLongAsItsJustLetters":
planet\([a-zA-Z]*\)
Wie kann ich nur Zeichenfolgen zuordnen, die genau mit "planetAwesome" oder "planetTerrible" übereinstimmen?
plan[ABC]
StreichhölzerplanA
,planB
undplanC
ebenso gut.Antworten:
Um die relevante Dokumentation anzuzeigen
:help /
, geben Sie ein und scrollen Sie zum Abschnitt „Die Definition eines Musters“.quelle
\m
,\M
,\v
, oder\V
. Es gibt auch die'magic'
Option , aber es ist normalerweise am besten, sie in Ruhe zu lassen, da sie globale Auswirkungen hat (sofern sie nicht von einem der oben genannten Flags überschrieben wird)./\vplanet(Awesome|Terrible)
Um Gilles 'Antwort zu ergänzen, möchten Sie vielleicht ein paar Dinge hinzufügen:
\<
markiert den Anfang eines Wortes (im Wesentlichen alphanumerisch)\>
markiert das Ende eines Wortes (im Wesentlichen alphanumerisch)quelle