Ce n'python “re.la compilation”?
Lorsque vous exécutez re.match pour la chaîne d'origine et la chaîne qui a été adopté par le ré.compiler, comment est ce différent? Ce qui s'est passé à la chaîne qui a été adopté par le ré.compiler?
Regarder les docs de la première...
cette question est similaire à celui-ci: stackoverflow.com/questions/452104/... même si vous sont marqués vers le bas (-1 vs 155 dans le lien), je pense que c'est une bonne question à poser. Stackoverflow la communauté python a l'habitude de "bas de vote d'abord comprendre la question plus tard"
cette question est similaire à celui-ci: stackoverflow.com/questions/452104/... même si vous sont marqués vers le bas (-1 vs 155 dans le lien), je pense que c'est une bonne question à poser. Stackoverflow la communauté python a l'habitude de "bas de vote d'abord comprendre la question plus tard"
OriginalL'auteur mango | 2013-12-04
Vous devez vous connecter pour publier un commentaire.
Il compile une expression régulière en un objet regex. Jetez un oeil à la docs pour plus d'info.
Pendant que vous êtes techniquement correcte,
re
fait caches un tas de regex dans un dict -- Donc, si vous ne compilez pas explicitement,re
de compiler les regex sur le premier appel et d'utiliser la version compilée sur les appels suivants pour plus d'efficacité. Vous ne verrez une accélération significative si votre programme utilise plus dere._MAXCACHE
expressions régulières provoquant le cache est effacé et recréé. Je dirais que vous devriez compiler le regex pour le code de clarté, plus de vitesse.Ahh. Merci pour la clarification. Mon re._MAXCACHE=100, et j'ai été en utilisant près de 1000 modèles, donc re interne de la mise en cache n'aide pas. Hors-sujet: j'ai toujours des problèmes de choix d'un nom de variable mon compilé modèle objet. Des suggestions?
OriginalL'auteur JonathanV