鱼C论坛

 找回密码
 立即注册
查看: 775|回复: 8

请教正则表达式特殊字符 ?:

[复制链接]
发表于 2019-1-9 16:33:04 | 显示全部楼层 |阅读模式

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

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

x
p = r'(?:(?:[01]{0,1}\d{0,1}\d|2[0 - 4]\d|25[0 - 5])\.){3}(?:[01]{0,1}\d{0,1}\d|2[0 - 4]\d|25[0 - 5])'


>>>
124.254.57.150
101.71.27.120



这三个  ?: 到底是什么意思??
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-1-9 16:45:17 | 显示全部楼层
解除子组
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-9 17:07:10 | 显示全部楼层
iwanna 发表于 2019-1-9 16:44
没见过这种用法,而且你这个也不能匹配啊,确定不是写错了?

(?:(?:
  第一个?:    和第二个?:  意思一样吗  第二个?:  里面没有子组哇
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-9 17:56:15 | 显示全部楼层
(...)
匹配圆括号中的正则表达式,或者指定一个子组的开始和结束位置
注:子组的内容可以在匹配之后被 \数字 再次引用
举个栗子:(\w+) \1 可以字符串 "FishC FishC.com" 中的 "FishC FishC"(注意有空格)

(?...)
(? 开头的表示为正则表达式的扩展语法(下边这些是 Python 支持的所有扩展语法)

(?:...)
非捕获组,即该子组匹配的字符串无法从后边获取
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-9 18:02:49 | 显示全部楼层
幻千城12 发表于 2019-1-9 17:56
(...)
匹配圆括号中的正则表达式,或者指定一个子组的开始和结束位置
注:子组的内容可以在匹配之后被 \ ...

(?:(?:
  第一个?:    和第二个?:  意思一样吗  第二个?:  里面没有子组哇
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-9 20:23:10 | 显示全部楼层
hualuo 发表于 2019-1-9 18:02
(?:(?:
  第一个?:    和第二个?:  意思一样吗  第二个?:  里面没有子组哇

你应该是没理解子组
(...)
匹配圆括号中的正则表达式,或者指定一个子组的开始和结束位置
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-3-30 11:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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