Expression régulière qui correspond à un mot, ou rien du tout

J'ai vraiment du mal à mettre une étiquette sur ce qui est probablement la raison pour laquelle j'ai été incapable de trouver ce dont j'ai besoin par le biais d'une recherche.

Je cherche à faire correspondre les éléments suivants:

  • Réponse Automatique
  • De Réponse Automatique
  • AutomaticReply

La plate-forme que j'utilise ne permet pas pour la spécification de la casse des recherches. J'ai essayé de l'expression régulière suivante:

.*[aA]uto(?:matic)[ ]*[rR]eply.*

Penser que (?:matic) serait la cause de mon expression pour correspondre à Auto ou Automatic. Toutefois, c'est seulement de correspondance Automatic.

  • Ce que je fais mal?
  • Qu'est-ce que la terminologie appropriée ici?

C'est à l'aide de Perl pour le moteur d'expression régulière (je pense que c'est PCRE mais je ne suis pas sûr).

Si c'est une expression rationnelle Perl, vous n'avez pas besoin .* au début et à la fin, par défaut n'est qu'une regex peut correspondre à une partie d'une chaîne et n'a pas besoin de correspondre à tous. Vous pouvez ajouter des modificateurs pour les regex avec la (?^i: ... ) étendue de modèle.
Je vais essayer ça. Tout ce que j'ai est un champ de saisie dans un formulaire web dans OTRS qui me permet de spécifier une expression régulière. Je n'ai pas fouillé dans le code source pour voir ce qu'il fait à l'entrée, mais il est probable que ce que vous dites sera beau travail. Merci.
perl != PCRE, Cochez la différence. Aussi, comment est-ce que votre plate-forme permettent pas insensibles à la casse ? Avez-vous essayé le réglage de la i modificateur dans votre regex comme (?i)auto(?:matic)?\s*reply ?
Pour info, PCRE et l'expression rationnelle Perl moteur sont différents, mais surtout compatible regex systèmes. Moderne Perl prend même en charge enfichables regex moteurs. Voir pcre.org et perldoc.perl.org/perlre.html pour plus d'info.
Merci pour l'information. Je suis sur OTRS, qui fournit un formulaire en ligne à partir de laquelle de soumettre les expressions régulières. Je ne suis pas sûr de ce qu'il fait avec elle après. Je sais que OTRS est écrit en Perl. J'ai trouvé zéro de la documentation sur ce type de moteur d'Expression Régulière est en cours d'utilisation, ou de ce qu'il fait avec la valeur après qu'il a été saisi.

OriginalL'auteur crush | 2014-01-17