首頁  >  文章  >  後端開發  >  python編譯正規表示式提高效率方法詳解

python編譯正規表示式提高效率方法詳解

巴扎黑
巴扎黑原創
2017-09-26 10:39:483687瀏覽

Python是一個很酷的語言,因為你可以在很短的時間內利用很少的程式碼做很多事情,再加上正則表達式就更能體現其效果,下面這篇文章主要給大家介紹了關於python中透過預先編譯正規表示式提高效率的相關資料,需要的朋友可以參考下。

前言

在re的正規表示式模組裡,可以透過模組的方式存取正規表示式,但如果重複多次地使用正規表示式,最好是使用compile函數把正規表示式編譯成物件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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn