python入门问题,关于正则表达式。求高手通俗解答。

图片中,这部分例题是说中间包含分组也就是小括号了,所以pattern其他的东西就没用了,但是pattern最后是{3},这个意思不是说(\.[0-9]{1,3})中后面的数字需要进行3次吗,那为什么返回.1和.66,难道str1前面的.0还有.168和.1什么的就不满足吗?

另外第二张图也是这题,他在r后面加了整体的小括号,但是最后却输出item[0],我试了一下他的item[1]就是前面没加括号时的.1和.66,我就想不明白了,整体意思不是说第一段是1位到3位的数字,后面有三段是“.”加上一到三位的数字的意思吗?那么加上小括号后为什么还有item[1]这些东西,也就是为啥还有.1和.66这两个东西怎么来的。

另外希望高手简单地补充补充这个正则表达式写模式字符串的时候,也就是这个r后面,连接顺序应该怎么样的呢?看还行,自己写就崩啊。

pattern=r'([1-9]{1,3}(\.[0-9]{1,3}){3})'

[1-9]{1,3}表示匹配由1-9之间任意数组成的1位、2位或3位数,如1,12,123

\.[0-9]{1,3}表示匹配1个点接由0-9之间任意数组成的1位、2位或3位数,如.1,.12,.123

(\.[0-9]{1,3}){3}表示\.[0-9]{1,3}的匹配条件重复3次,如.1.2.3,.1.12.123,168.1.1

([1-9]{1,3}(\.[0-9]{1,3}){3})表示匹配1-9之间任意数组成的1位、2位或3位数+1个点接由0-9之间任意数组成的1位、2位或3位数 * 3次,所以可以匹配127.0.0.1,192.168.1.66

()仅仅表示括号内的匹配项作为一组匹配,不会影响匹配的条件,

温馨提示:内容为网友见解,仅供参考
无其他回答

python入门问题,关于正则表达式。求高手通俗解答。
pattern=r'([1-9]{1,3}(\\.[0-9]{1,3}){3})'[1-9]{1,3}表示匹配由1-9之间任意数组成的1位、2位或3位数,如1,12,123 \\.[0-9]{1,3}表示匹配1个点接由0-9之间任意数组成的1位、2位或3位数,如.1,.12,.123 (\\.[0-9]{1,3}){3}表示\\.[0-9]{1,3}的匹配条...

python 正则表达求如何解释
r懂吧?r就是raw string。[]代表字符组,\\d代表数字(digit) ,\\w代表大小写字母数字和下划线。所以这个字符组就是允许一个数字或者数字,下划线。+代表这个字符组允许出现1次以上。$则代表从该字符串末尾开始匹配。整个的例子就是'r','hsdjkfh','21321','_ad',...对于'sadsad '由于某位字符...

python的正则表达式
1,正则表达式的一些内容         正则表达式主要是用来匹配文本中需要查找的内容,例如在一片文章中找出电话号码,就中国的来说11位纯数字(不说座机),则使用"\\d{11}" 意味匹配数字11次,就能准确的查找出文本中的电话号码. 还有就是在编写网络爬虫的时候需要提取很多超...

Python实用技术一:正则表达式
一,正则表达式的基本概念和构成正则表达式是个某些字符有特殊含义字符串,表示一种字符串的模式(格式),\\ 如:\\ 九,匹配对象groups([default]):\\ 以元组形式返回全部分组匹配的字符串。相当于调用group(1 ,2,.. .last)。\\ default表示没有匹配字符串的组以这个值替代,默认为None。\\ groupdict([de...

python正则表达式是什么?
正则表达式是用来匹配字符串非常强大的工具,在其他编程语言中同样有正则表达式的概念,Python同样不例外,利用了正则表达式,我们想要从返回的页面内容提取出我们想要的内容就易如反掌了。Python由荷兰数学和计算机科学研究学会的Guido van Rossum于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了...

python正则表达式是什么?
1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”)。2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。大家可以简单的理解为两点:search和match。OK,了解了正则表达式的概念和作用,我们赶紧进入Python的学习吧!正则表达式不是Python独有的武器,但Python中的正则表达式无疑是最简单...

python正则表达式匹配多少位数
python入门问题,关于正则表达式。求高手通俗解答。pattern=r'([1-9]{1,3}(\\.[0-9]{1,3}){3})'[1-9]{1,3}表示匹配由1-9之间任意数组成的1位、2位或3位数,如1,12,123 \\.[0-9]{1,3}表示匹配1个点接由0-9之间任意数组成的1位、2位或3位数,如.1,.12,.123 (\\.[0-...

学Python正则表达式,这一篇就够了
Python提供基于正则表达式的两种不同的原始操作:match检查仅匹配字符串的开头,而search检查字符串中任何位置的匹配(这是Perl默认情况下的匹配)。示例 当执行上述代码时,会产生以下结果 :4.搜索和替换 使用正则表达式re模块中的最重要的之一是sub。模块 此方法使用repl替换所有出现在RE模式的字符串,替换...

Python其实很简单 第十一章 正则表达式
其中,pattern表示匹配的正则表达式;string是要匹配的字符串;flags表示标志位,用于控制正则表达式的匹配方式,如:re.I表示不区分大小写。例如:>>> re.search(r'Pyw+','It's easy to use Python, but it's not easy to learn Python.')可以看出,目标字符串“It's easy to use Python, ...

Python 基础教程 第10章,正则表达式匹配问题
is [x+y+z]'))scope是在全局变量里保存正则匹配出来的x,y,z变量,存到全局变量里去;这本书的案例在except SyntaxError:后面少了点代码,只提供注释,前面其实已经提到用exec赋值了,只是代码里没有体现出来,我完善了下这个应该能看懂了,还有[],正则已经把[]替换掉了,换成x,y,z对应的值 ...

相似回答