栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在python regex中将1个单词限制为区分大小写,其他限制为不区分大小写 (管)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在python regex中将1个单词限制为区分大小写,其他限制为不区分大小写 (管)

在Python 3.6及更高版本中,您可以使用内联修饰符组:

>>> s = "Welcome to PuNe, Maharashtra">>> print(re.findall(r"PuNe|(?i:MaHaRaShTrA)",s))['PuNe', 'Maharashtra']

请参阅相关的Python

re
文档:

(?aiLmsux-imsx:...)

(零或从所述一组多个字母

'a'
'i'
'L'
'm'
's'
'u'
'x'
,任选接着进行
'-'
随后从一个或多个字母
'i'
'm'
's'
'x'
。)中的字母设置或移除对应的标志:
re.A
(只有ASCII匹配),
re.I
(忽略大小写),
re.L
(取决于语言环境),
re.M
(多行),
re.S
(所有点都匹配),
re.U
(Unipre匹配)和
re.X
(详细)。(这些标志在模块内容中描述。)

这些信件

'a'
'L'
'u'
为内联标志使用时,所以他们不能合并或者按照相互排斥
'-'
。而是,当其中一个出现在内联组中时,它将覆盖封闭组中的匹配模式。在Unipre模式中,
(?a:...)
切换到仅ASCII匹配,然后
(?u:...)
切换到Unipre匹配(默认)。在字节模式中,
(?L:...)
切换到取决于语言环境的匹配,并
(?a:...)
切换到仅ASCII匹配(默认)。此替代仅对狭窄的内联组有效,并且原始匹配模式在组外恢复。

_3.6版的新功能。

在3.7版中进行了更改:字母“ a”,“ L”和“ u”也可以在一个组中使用。_

不幸的是,

re
3.6之前的Python版本不支持这些组,也不支持交替启用和禁用内联修饰符。

如果可以使用PyPi
regex模块
,则可以使用以下

(?i:...)
结构:

import regexs = "Welcome to PuNe, Maharashtra"print(regex.findall(r"PuNe|(?i:MaHaRaShTrA)",s))

请参阅在线Python演示。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/651176.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号