佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Python與sed,grep文本查找效率對比小測

Python與sed,grep文本查找效率對比小測

熱門標(biāo)簽:服務(wù)器配置 外呼系統(tǒng) 美團(tuán) 家政服務(wù)網(wǎng)絡(luò) 解決方案 電話機(jī)器人搭建 硅谷的囚徒呼叫中心 百度競價點(diǎn)擊價格的計算公式
Gnu awk作者在FreeBSD郵件列表中回答”GNU grep為什么比BSD grep要快“,提到了用到了Boyer-Moore算法,雖然不知道是什么,但感覺很厲害的樣子~我猜想grep有多快呢?

所以想比較下下python,sed與grep:

測試文本:20w行,21M大

python普通正則匹配:


復(fù)制代碼
代碼如下:

#!/usr/bin/python3
import re
f=open('/tmp/test.txt')
for line in f:
match=re.findall('^This.*want',line)
if match != []:
print(match)


結(jié)果:

試下編譯的正則試試:


復(fù)制代碼
代碼如下:

#!/usr/bin/python3
import re
f=open('/tmp/test.txt')
re_obj=re.compile('^This.*want')
for line in f:
match=re_obj.findall(line)
if match != []:
print(match)


結(jié)果快了1倍:


試試sed:

快了1個數(shù)量級!

最后試試grep:


果然grep是查找最專業(yè)的!

標(biāo)簽:南昌 北海 韶關(guān) 防城港 撫州 烏蘭察布 臨沂 邢臺

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python與sed,grep文本查找效率對比小測》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    五大连池市| 铜鼓县| 无棣县| 东城区| 阳原县| 清涧县| 余干县| 新野县| 定襄县| 贵定县| 宁化县| 阿荣旗| 康定县| 神池县| 西城区| 肇源县| 城口县| 鄂托克旗| 苍溪县| 香格里拉县| 阳信县| 古蔺县| 玛多县| 阜平县| 平定县| 无为县| 静安区| 双鸭山市| 阿克| 白银市| 和龙市| 咸宁市| 平舆县| 青浦区| 宜宾市| 色达县| 永清县| 新野县| 云阳县| 彭阳县| 沁水县|