设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【Python 第57课】 正则表达式(3)

[复制链接]

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

11#
发表于 2014-6-24 19:03:10 |只看该作者
paul 发表于 2014-6-23 21:57
再问一个问题:前题答案用\bs\S*e\b,是不是也可以?

但如果有sxxxe这种就不行了
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

49

积分

新手上路

Rank: 1

12#
发表于 2014-6-24 22:09:05 |只看该作者
crossin先生 发表于 2014-6-24 19:03
但如果有sxxxe这种就不行了

可以啊,为什么我也能匹配出来?
还有多一个?有什么区别吗?
?表示0个或1个,*表示0个或多个,两者放一块不还是0个或多个吗?
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

13#
发表于 2014-6-25 10:32:53 |只看该作者
paul 发表于 2014-6-24 22:09
可以啊,为什么我也能匹配出来?
还有多一个?有什么区别吗?
?表示0个或1个,*表示0个或多个,两者放一 ...

不好意思,看错了。的确是可以的,不需要有?
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

558

积分

高级会员

Rank: 4

14#
发表于 2014-9-28 23:36:28 |只看该作者
看到这里,上节课的问题解决了。又学习了新知识。
学习,纯粹。
回复

使用道具 举报

0

主题

0

好友

558

积分

高级会员

Rank: 4

15#
发表于 2014-9-28 23:37:32 |只看该作者
paul 发表于 2014-6-23 21:57
再问一个问题:前题答案用\bs\S*e\b,是不是也可以?

是可以的。但是我这样\bs.*?e\b是不可以的。
学习,纯粹。
回复

使用道具 举报

0

主题

0

好友

200

积分

中级会员

Rank: 3Rank: 3

16#
发表于 2016-1-7 23:08:48 |只看该作者
先生,这样的代码:
  1. import re
  2. text = "site sea sue sweet see case sse ssee loses"
  3. m = re.findall(r".*", text)
  4. if m:
  5.     print m
  6. else:
  7.     print 'not match'
复制代码
其运行结果是这样:['site sea sue sweet see case sse ssee loses', ''],不明白的是,list里面两个字符串的后面那个空字符串哪里来的?
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

17#
发表于 2016-1-8 10:36:04 |只看该作者
周末晒被子 发表于 2016-1-7 23:08
先生,这样的代码:其运行结果是这样:['site sea sue sweet see case sse ssee loses', ''],不明白的是, ...

因为空字符也是满足.*这个条件的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

200

积分

中级会员

Rank: 3Rank: 3

18#
发表于 2016-1-8 12:28:16 |只看该作者
crossin先生 发表于 2016-1-8 10:36
因为空字符也是满足.*这个条件的

1,可是 'site sea sue sweet see case sse ssee loses' 这个字符串已经把 text 的从头到尾,所有的位置表达完了,都没有更多一个位置来给 "." 安放了,这个空字符串在哪里?

2,而且如果末尾有一个空字符串,那么开头也应该有吧,可是开头并没有。
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

19#
发表于 2016-1-9 21:03:36 |只看该作者
周末晒被子 发表于 2016-1-8 12:28
1,可是 'site sea sue sweet see case sse ssee loses' 这个字符串已经把 text 的从头到尾,所有的位置 ...

结尾的。开头开始因为优先匹配最长的,已经匹配掉了
空字符不占位置
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

1

好友

273

积分

中级会员

Rank: 3Rank: 3

20#
发表于 2016-2-2 15:56:23 |只看该作者
打卡~~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-22 00:45 , Processed in 0.027545 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部