Comment utilisez-vous Notepad ++ regex pipe | pour des chaînes plus longues qu'un caractère?

StackOverflow https://stackoverflow.com/questions/820740

  •  03-07-2019
  •  | 
  •  

Question

J'essaie de faire en sorte que Notepad ++ utilise une expression régulière pour trouver toutes les instances de " abc " et " def " dans la phrase suivante:

  

L'ABC est allé à la def.

Aucune des syntaxes suivantes ne semble fonctionner:

  • abc | def
  • [abc | def]
  • (abc) | (def)
  • (abc | def)

REMARQUE: "[a | d]" correspond à toute instance de " a " ou " d " quand j'ai testé

Était-ce utile?

La solution

Mettez à niveau vers Notepad ++ v6. Dans le journal des modifications: "PCRE (expressions régulières compatibles avec Perl) est pris en charge". J'ai vérifié que | fonctionne dans la recherche regex avec Notepad ++ v6.

Autres conseils

Il n'y a rien de particulier à propos de "plus d'un caractère", le Bloc-notes ++ ne prend pas en charge les | caractère dans regex. Même pas "a | d" travaux. Voir la page d'aide de regex . La version 6.1.1 de Notepad ++ prend désormais en charge | .

Je suggérerais d'utiliser un éditeur doté d'une implémentation regex appropriée, tel que gvim ou UltraEdit .

Dans une déclaration de jeu de caractères ( [& # 8230;] ), seuls les caractères \ , ] et - sont des caractères spéciaux ayant pour fonctions spéciales d'échapper le caractère suivant, de fermer la déclaration du jeu de caractères et de marquer une plage de caractères (uniquement s'ils ne sont pas écrits au début ou à la fin). Tout autre caractère est interprété comme un caractère brut.

Votre | est-il dans [a | d] , ce qui signifie que [a | d] décrit l'un des caractères un , | ou d et pas seulement a ou d comme a | d fait

J'avais le même problème, et c'est comme ça que j'ai atterri ici. Puisqu'il s'agit d'un défaut du bloc-notes ++, nous pouvons nous débrouiller en utilisant Powershell. Dans votre cas, exécutez simplement une chaîne de sélection:

`ss abc,def filename`

Si sous Unix, vous avez d’autres outils comme grep bien sûr.

Je reconnais que vous vouliez une solution pour Notepad ++, et moi aussi, mais vous devez parfois vous débrouiller.

Le | devrait fonctionner maintenant.
Merci à l'amélioration Regex de Notepad ++

abc | def

(abc) | (def)

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