Quand ne pas utiliser RegexOptions.Compilé

Je comprends l'avantage de l'utilisation de RegexOptions.Compilé -
il améliore le temps d'exécution de l'application par l'expression régulière en forme compilée au lieu de l'interpréter au moment de l'exécution. Bien que l'utilisation de ce n'est pas recommandé pour les applications qui sont déjà lent au démarrage.

Mais si ma demande peut porter toute légère augmentation du temps de démarrage de l' -

quelles sont les autres scénarios dans lesquels je ne devrais PAS utiliser RegexOptions.Compilé?

Juste une remarque, je suis à l'appel de cette méthode à plusieurs reprises -

private static string GetName(string objString)
{
    return Regex.Replace(objString, "[^a-zA-Z&-]+", "");
}

Ainsi, cette méthode est appelée avec des valeurs différentes pour "objString" (bien que les valeurs pour objString peut refaire).

Pensez-vous que c'est bon/pas bon d'utiliser RegexOptions.Compilé ici?
Tout lien web serait vraiment utile.

Merci!!!!


MODIFIER

J'ai testé mon application web avec les deux

  • RegexOptions.Compiled, et
  • Instancier Regex comme variable de classe

Mais ne pouvait pas trouver une grosse différence dans le temps pris par mon application web -
Seule chose que j'ai remarqué dans les deux scénarios est que la première fois lors du chargement de l'application, c'est de prendre le double du temps pris par rapport à celle successives de chargement de la page et c'est indépendamment du fait que j'utilise RegexOptions.Compilé ou non.

Des commentaires pour --

pourquoi mon application web prend plus de temps pour l'expression rationnelle de processus pour la première fois, et le temps est presque réduite à la moitié ou moins dans les chargements ultérieurs - Est-il intégré la mise en cache ou de certains autres .net fonction est d'aider ici.
P. S. C'est chose même si j'utilise RegexOptions.Compilé ou non.

  • Parfois, il n'est de ralentir les choses de façon spectaculaire... le tester avant de l'utiliser.
InformationsquelleAutor iniki | 2012-04-01