百科狗-知识改变命运!
--

python re模块中 (?P) (?P=name) 及 \g 三者的使用区别

是丫丫呀1年前 (2023-12-21)阅读数 8#综合百科

题主你好,

没有单独的(?P)这种用法, 猜测应该指的是(?P), (?P=name),\g这三者的用法.

首先说(?P),它其实和单个圆括号,(),本质上一样, 只不过在后面引用分组中多了一种引用方法:

(123)对于这个分组, 你引用时只能是\1(这种也是我们最常用的分组与引用的方法),见例子:

(?P123)对于这个分组, 你即可以使用传统方法\1,也可以使用(?P=num)进行引用,最终得到的结果是一样的,见例子:

\g其实与(?P=name)它俩性质一样, 都是用于对(?P)分组的引用, 特殊的地方在于,\g专门用在re.sub(替换内容, 匹配内容)中的"替换内容"部分

总结:

1.(?P)就是分组,只不过如果你在分组时这样写了,后面引用分组中的内容时,即可以使用"\数字"的形式, 也可以使用(?P=name)的形式.

2.(?P=name)在第1点中说过了, 它就是对(?P)这个分组使用名称进行引用的手段,和"\数字"没啥区别.

3.\g专门用于re.sub这个函数的替换部分,来引用(?P)分组中的内容.

*.最后,(?P)用于分组, (?P=name)和\g用于引用.? //根据上面讲的,想一下(?P)用于分组时和单独的圆括号,(),有什么区别? 再想一下\g虽然也是引用,但是它有限制, 这个限制是什么? 这两个问题想明白了,你应该也就明白了.另外(?P=name)是要在分组是使用(?P)时才能使用,如果分组就是一个圆括号,(),只能老老实实使用"\数字"的形式进行引用.

写在最后: 上面虽说了问题中三者的用法, 但是逻辑组织并不是很清晰, 题主看完自己再自己总结一下吧.

-----扩展阅读-----

=====

python re模块中 (?P) (?P=name) 及 \g 三者的使用区别

希望可以帮到题主, 欢迎追问.

python中{}[]是无世纪的年份。

%Y会被无世纪的年份所替代。%m会被01到12之间的一个十进制月份数替代,其他依次类推。

(1)%c 整数转成对应的 ASCII 字元;

(2)%d 整数转成十进位;

(3)%f 倍精确度数字转成浮点数;

(4)%o 整数转成八进位。

扩展资料:

由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。

众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)