Comment puis-je écrire une expression régulière qui exclut plutôt que de matchs, par exemple, de ne pas (ce|chaîne)?

Je suis perplexe, essayant de créer un Emacs expression régulière qui exclut des groupes. [^] exclut les caractères individuels dans un ensemble, mais je veux exclure certains séquences de caractères: quelque chose comme [^(not|this)], de sorte que les chaînes de caractères contenant "pas" ou "ce" ne sont pas appariés.

En principe, je pourrais écrire ([^n][^o][^t]|[^...]), mais est-il une autre façon qui est plus propre?

  • Je pense que c'est GNU ERE.
  • vous avez raison, merci
  • Cliquez sur le "regex négation" tag pour voir certaines des questions similaires.
  • Il existe un patch (non accepté) pour les assertions avant ce qui rend cela possible: debbugs.gnu.org/db/53/5393.html
InformationsquelleAutor Anycorn | 2010-02-07