请问怎么理解这个正则表达式"\"(?P.+)\""两个\"是代表取两个引号之间的字符串,但是?P代表什么?另外,是指什么,为什么要塞在这里?
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/18 04:35:05
请问怎么理解这个正则表达式"\"(?P.+)\""两个\"是代表取两个引号之间的字符串,但是?P代表什么?另外,是指什么,为什么要塞在这里?
请问怎么理解这个正则表达式"\"(?P.+)\""
两个\"是代表取两个引号之间的字符串,但是?P代表什么?另外,是指什么,为什么要塞在这里?
请问怎么理解这个正则表达式"\"(?P.+)\""两个\"是代表取两个引号之间的字符串,但是?P代表什么?另外,是指什么,为什么要塞在这里?
你的这一条正则表达式是要匹配“双引号之间除换行之外的所有字符,并以名称为first为名进行捕获
但是,这里却使用了貌似只有Python支持的P前缀,我觉得这种用法是给Python使用的一种专用命名组的方式.
这是较为先进的正则用法,它可以方便用户在正则内部或外部对匹配来的组进行调用.
而自从正则引入了这个概念(功能)之后,正则能够完成的事情更加强大了.
你可以参考下面的这篇很不错的文章,来了解正则捕获组的意义和用法:
参考资料:
【正则基础之——捕获组(capture group)】http://blog.csdn.net/lxcnn/article/details/4146148
【Python正则之(?P=name)匹配前面已命名的组】http://www.crifan.com/detailed_explanation_about_python_regular_express_match_named_group/
【Python正则之(?P…)带命名的组】http://www.crifan.com/detailed_explanation_about_python_regular_express_named_group/