服务器之家

服务器之家 > 正文

python正则表达式函数match()和search()的区别

时间:2022-01-19 00:17     来源/作者:脚本之家

match()函数只检测RE是不是在string的开始位置匹配, search()会扫描整个string查找匹配, 也就是说match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none

例如:

?
1
2
3
4
5
6
7
8
9
10
11
#! /usr/bin/env python
# -*- coding=utf-8 -*-
  
import re
  
text= 'pythontab'
m= re.match(r"\w+", text)
if m:
    print m.group(0)
else:
    print 'not match'

结果是:pythontab

而:

?
1
2
3
4
5
6
7
8
9
10
11
12
#! /usr/bin/env python
# -*- coding=utf-8 -*-
#
  
import re
  
text= '@pythontab'
m= re.match(r"\w+", text)
if m:
    print m.group(0)
else:
    print 'not match'

结果是:not match

search()会扫描整个字符串并返回第一个成功的匹配

例如:

?
1
2
3
4
5
6
7
8
9
10
11
12
#! /usr/bin/env python
# -*- coding=utf-8 -*-
#
  
import re
  
text= 'pythontab'
m= re.search(r"\w+", text)
if m:
    print m.group(0)
else:
    print 'not match'

结果是:pythontab

那这样呢:

?
1
2
3
4
5
6
7
8
9
10
11
12
#! /usr/bin/env python
# -*- coding=utf-8 -*-
#
  
import re
  
text= '@pythontab'
m= re.search(r"\w+", text)
if m:
    print m.group(0)
else:
    print 'not match'

结果是:pythontab

更多关于python正则函数请查看下面的相关文章

原文链接:https://www.pythontab.com/html/2013/pythonjichu_0201/199.html

相关文章

热门资讯

蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部