鱼C论坛

 找回密码
 立即注册
查看: 773|回复: 2

求助python正则表达式的用法

[复制链接]
发表于 2019-3-24 23:13:46 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
代码1:
>>> m = re.match("([abc])+", "abc")
>>> m.groups()
('c',)

代码2:
>>> p = re.compile(r'(\b\w+)\s+\1')
>>> p.search('Paris in the the spring').group()
'the the'



问题1:没有明白'([abc])+' 是什么含义,为什么要加个括号,这里不就是表达重复abc 一次或多次么,返回结果也没看懂?

问题2:  \b不就是表示单词边界吗,为什么要加上这个;另麻烦也解释这个正则表达式吧?
来自: 微社区
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-3-25 11:50:22 | 显示全部楼层
顶一下,我也没看懂,希望有高手来讲解下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-25 12:46:43 | 显示全部楼层
我研究了下,代码1的括号可以去掉没有任何影响。
唯一有区别的是m.groups()和m.group()
  1. >>>import re
  2. >>>m = re.match("[abc]+", "abc")
  3. >>>print(m.group())
  4. >>>abc
  5. >>>print(m.groups())
  6. >>>()
复制代码


小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-14 19:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表