Question

est quelque chose de mal dans « : g-2-g / 3 / » ou est la récursion dans le monde manquant? Je ne comprends pas une raison de l'erreur:

  

E147: Impossible: récursive global

Comment puis-je obtenir une recherche globale récursive dans VIM?

[Suggestion initiale de Neil avec l'opérateur \ | ]

g/1.*2\|2.*1/

Un inconvénient est que les combinaisons dilatent avec n nombres. Pour trois chiffres, le nombre de combinaisons est 3! (= 6) qui est

g/1.*2.*3\|2.*1.*3\|3.*1.*2\|1.*3.*2\|2.*3.*1\|3.*2.*1/ 

Pour n nombres, le nombre de combinaisons est n!.

[Solution avec l'opérateur \ &]

Brian Carper et Neil Butterworth cernées la solution. Un grand merci pour eux!

g/.*1\&.*2\&.*3/

Il est pour toute la ligne:

g/.*1\&.*2\&.*3\&.*/
Était-ce utile?

La solution

Nouvelle info: Ce fait ce que vous voulez - la séquence "\ &" est le "et" opérateur:

g/.*1\&.*2\&.*3/

Brian Carper de (voir les commentaires, et merci encore) explication:

  

/1\&2/ ne fonctionnerait pas parce que les deux   branches doivent correspondre « à la   position ». /.*1\&.*2/ laisser le match   ancrer lui-même à l'avant de la ligne   puis développez cependant beaucoup il a besoin   à trouver les numéros

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top