ホームページ  >  記事  >  バックエンド開発  >  Pythonで正規表現のコンパイルを効率化する方法を詳しく解説

Pythonで正規表現のコンパイルを効率化する方法を詳しく解説

巴扎黑
巴扎黑オリジナル
2017-09-26 10:39:483686ブラウズ

Python は、短時間で非常に少ないコードで多くのことを行うことができ、正規表現はその効果をよりよく反映できるため、クールな言語です。次の記事では、事前に効率を向上させるための情報が必要な友人について主に紹介します。 -Python で正規表現をコンパイルすると参照できます。

はじめに

re の正規表現モジュールでは、モジュールを通じて正規表現にアクセスできますが、正規表現を繰り返し使用する場合は、コンパイル関数を使用して正規表現をコンパイルするのが最善です。オブジェクト RegexObject を使用すると、ノンコンパイル モードでアクセスする場合、モジュール内の小さなバッファが使用されるため、検索の効率が大幅に向上します。

例:


import re 
 
# Precompile the patterns 
regexes = [ 
 re.compile(p) 
 for p in ['this', 'that'] 
] 
text = 'http://blog.csdn.net/caimouse is great blog, this is my blog.' 
 
print('Text: {!r}\n'.format(text)) 
 
for regex in regexes: 
 print('Seeking "{}" ->'.format(regex.pattern), 
   end=' ') 
 
 if regex.search(text): 
  print('match!') 
 else: 
  print('no match')

結果の出力は次のとおりです:


Text: 'http://blog.csdn.net/caimouse is great blog, this is my blog.'


Seeking "this" -> match!
Seeking "that" -> no match

以上がPythonで正規表現のコンパイルを効率化する方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。