re搜索字符串与find字符串不一样的结果
生活随笔
收集整理的這篇文章主要介紹了
re搜索字符串与find字符串不一样的结果
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題起源:
做關(guān)鍵詞統(tǒng)計分析的時候,發(fā)現(xiàn)re方法與字符串的find方法結(jié)果不一樣,如圖所示:
s1 = "ddddtfeth" s2 = "(eth)" res = re.search(s2,s1) if res:print("re",res.group()) else:print("re false")print("find",s1.find(s2))re eth find -1實驗一、
s1 = "ddddtfeth" s2 = "\(eth\)" res = re.search(s2,s1) if res:print("re",res.group()) else:print("re false")print("find",s1.find(s2))re false find -1?實驗二、
s1 = "ddddtf(eth)" s2 = "\(eth\)" res = re.search(s2,s1) if res:print("re",res.group()) else:print("re false")print("find",s1.find(s2))re (eth) find -1?
這里就足以說明,re處理匹配字符串時,會將括號變成正則表達(dá)式中的特殊字符。真正尋找的是eth,加上轉(zhuǎn)義符后,就會真正搜索(ETH)字符串。
?
?
總結(jié)
以上是生活随笔為你收集整理的re搜索字符串与find字符串不一样的结果的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vim 的substitute
- 下一篇: 一文看懂Python多进程与多线程编程(