设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
123
返回列表 发新帖
楼主: crossin先生
打印 上一主题 下一主题

【Python 第55课】 正则表达式(1)

[复制链接]

0

主题

0

好友

14

积分

新手上路

Rank: 1

21#
发表于 2017-9-24 22:38:27 |只看该作者
  1. # 正则表达式
  2. import re
  3. text = 'hi, my name is him. I na am 23 years old.'
  4. result = re.findall('\\bhi',text)
  5. if result:
  6.     print result
  7. else:
  8.     print 'there is no match!'
复制代码
之前无脑的直接
  1. result = re.findall('\bhi',text)
复制代码
然后一直无匹配。。。忘记了在引号里要多加一个\ 了。。。。
回复

使用道具 举报

0

主题

0

好友

14

积分

新手上路

Rank: 1

22#
发表于 2017-9-24 23:03:48 |只看该作者
shaonan 发表于 2017-9-24 22:38
之前无脑的直接然后一直无匹配。。。忘记了在引号里要多加一个\ 了。。。。 ...

请问我分析的对吗。。看了第二课又有些疑问。。
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

23#
发表于 2017-9-25 11:32:52 |只看该作者
shaonan 发表于 2017-9-24 23:03
请问我分析的对吗。。看了第二课又有些疑问。。

对的。或者在规则前面加上 r,避免字符串的转义
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

14

积分

新手上路

Rank: 1

24#
发表于 2017-9-26 22:12:26 |只看该作者
crossin先生 发表于 2017-9-25 11:32
对的。或者在规则前面加上 r,避免字符串的转义

你好,我提出疑问的原因是我发现对于\S来说,\\S和\S没有区别:
  1. # 匹配所有s开头e结尾的单词 且单词字母大于2
  2. text = 'site sea sue sweet see case se ssee loses lsre'
  3. result = re.findall('\\bs\S+?e\\b',text)
  4. if result:
  5.     print result
  6. else:
  7.     print 'there is no match!'[/code

  8. [code]
  9. # 匹配所有s开头e结尾的单词 且单词字母大于2
  10. text = 'site sea sue sweet see case se ssee loses lsre'
  11. result = re.findall('\\bs\\S+?e\\b',text)
  12. if result:
  13.     print result
  14. else:
  15.     print 'there is no match!'
复制代码
这两段程序运行结果相同,怎么解释呢?
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

25#
发表于 2017-9-26 22:54:52 |只看该作者
shaonan 发表于 2017-9-26 22:12
你好,我提出疑问的原因是我发现对于\S来说,\\S和\S没有区别:这两段程序运行结果相同,怎么解释呢? ...

因为 \S 不存在对应的字符转义
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

14

积分

新手上路

Rank: 1

26#
发表于 2017-9-27 09:45:19 |只看该作者
crossin先生 发表于 2017-9-26 22:54
因为 \S 不存在对应的字符转义

受教。。希望能变成你这样得人。。
回复

使用道具 举报

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

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

GMT+8, 2024-11-23 03:28 , Processed in 0.022754 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部