关于match的几个问题

关于match的几个问题

http://img1.sycdn.imooc.com//climg/5f2fe3f009bb86dc06130559.jpg

在网上查了一下资料,match默认从开头匹配,开头匹配不成功直接返回None

看到说可以规定匹配的起始和结束位置,但是我输一个索引进去检测的结果都是整个字符串,我的正则表达式测试在网站上测过没有问题

为什么打印出来的时候\会变成\\

视频里面在正则表达式前面加r的目的是什么呢,我感觉加不加都一样

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕乃馨 2020-08-10 10:59:21

同学你好。

1.查看匹配后的结果用group()方法,group()用来显示所有的匹配结果。由于给match指定了匹配的起始值,结果只有一个,所以用group(0)即可:

http://img1.sycdn.imooc.com//climg/5f30b7cf09699a7405320426.jpg

2.python自身处理字符串时,反斜杠是用于转义字符,在python看来,\\等于我们输入的字符“\”。

3.r表示其后的字符串按原样表示,不使用转义字符。比如"\n" 表示换行符,r"\n" 表示一个斜杠加上字符n组成的字符串。re.complie 不会主动去转义,在这加不加都是一样的。加r是一个良好的习惯,可以避免不必要的麻烦。

如果我的回答解决了您的疑惑,请采纳,祝学习愉快~~~~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师