国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > regex > 正文

Python中正則表達式match()、search()函數及match()和search()的區別詳解

2020-01-20 22:10:00
字體:
來源:轉載
供稿:網友

match()和search()都是python中的正則匹配函數,那這兩個函數有何區別呢?

match()函數只檢測RE是不是在string的開始位置匹配, search()會掃描整個string查找匹配, 也就是說match()只有在0位置匹配成功的話才有返回,如果不是開始位置匹配成功的話,match()就返回none

例如:

#! /usr/bin/env python# -*- coding=utf-8 -*-import retext = 'pythontab'm = re.match(r"/w+", text)if m:   print m.group(0)else:  print 'not match'

結果是:pythontab

而:

#! /usr/bin/env python# -*- coding=utf-8 -*-#import retext = '@pythontab'm = re.match(r"/w+", text)if m:   print m.group(0)else:  print 'not match'

結果是:not match

search()會掃描整個字符串并返回第一個成功的匹配

例如:

#! /usr/bin/env python# -*- coding=utf-8 -*-#import retext = 'pythontab'm = re.search(r"/w+", text)if m:   print m.group(0)else:  print 'not match'

結果是:pythontab

那這樣呢:

#! /usr/bin/env python# -*- coding=utf-8 -*-#import retext = '@pythontab'm = re.search(r"/w+", text)if m:   print m.group(0)else:  print 'not match'

結果是:pythontab

總結:

Python中正則表達式match()函數

如果不創建pattern對象,我們使用match函數可以直接進行正則表達式的匹配,在我看來這種方式更簡潔,不過不適合大型程序的編寫,后期維護可能會產生困難,不過編寫一些小腳本完全可以勝任。

Python中正則表達式search()函數

search函數和match函數有點類似,都可以匹配模式,但是match和search函數也有區別,而且區別很大,match函數只能夠字符串的開始位置開始匹配,而search是可以匹配字符串的任意位置,但也是返回找到的第一個匹配的模式。我們通過例子來了解這倆之間的區別吧。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 喀喇沁旗| 宁安市| 探索| 理塘县| 蓝山县| 灵台县| 蒙阴县| 甘洛县| 新巴尔虎左旗| 涞源县| 房产| 合江县| 丹寨县| 上饶县| 城步| 福建省| 高要市| 康保县| 太原市| 潜山县| 正阳县| 通州市| 龙岩市| 辽宁省| 上高县| 伊金霍洛旗| 冷水江市| 阜阳市| 武川县| 隆回县| 安徽省| 中山市| 玉田县| 夏邑县| 萨嘎县| 通化县| 玉门市| 永福县| 新建县| 吴桥县| 五河县|