Comment rechercher plusieurs chaînes de plusieurs mots dans vim?

1

Par exemple, j'essaie de rechercher l'occurrence des deux hello world et goodbye world dans la même ligne. J'ai essayé un tas d'itérations de différence. Par exemple, si vous voulez trouver une chaîne de plusieurs mots, vous pouvez la mettre entre crochets. /\<hello world\> mais je ne peux pas comprendre comment avoir plusieurs chèques pour plusieurs chaînes de mots multiples

J'ai essayé

/\<\(hello world \& goodbye world\)\>

ce n'est pas

/\<hello world\>\&\<goodbye world\>

sreya
la source

Réponses:

3

le \& Atome ne fait pas ce que vous croyez qu'il fait. Cela permet de faire correspondre deux parties d'expressions régulières au même endroit . Pour que les deux chaînes correspondent sur la même ligne, vous devez autoriser un nombre arbitraire de caractères avant les correspondances. C'est le motif: /.*red\&.*blue/

Pour votre exemple:

/.*\<hello world\>\&.*\<goodbye world\>/
Ingo Karkat
la source