【发布时间】:2020-11-08 10:13:53
【问题描述】:
我有以下字符串:
2020-10-2125Chavez and Sons
2020-05-02Bean Inc
NaNRobinson, Mcmahon and Atkins
2020-04-25Hill-Fisher
2020-04-02Nothing and Sons
52457Carpenter and Sons
0Carpenter and Sons
Carpenter and Sons
NoneEconomy and Sons
2020-04-02
我想把它分开:
myRegex = '^([-\d]{0,}|[NnaAOoEe]{0,})(.*)' or '^([0-9]{4}-[0-9]{2}-[0-9]{2,}|[\d]{0,}|[NnaAOoEe]{0,})([\D]{0,})$'
我想要所有数字,完全匹配 (na, nan, none) - 大写和小写以及第一组中的“”,例如:
[2020-10-2125][Chavez and Sons]
[2020-05-02][Bean Inc]
[NaN][Robinson, Mcmahon and Atkins]
[2020-04-25][Hill-Fisher]
[2020-04-02][Nothing and Sons]
[52457][Carpenter and Sons]
[0][Carpenter and Sons]
[][Carpenter and Sons]
[None][Economy and Sons]
[2020-04-02][]
这是错误的:
[2020-04-02No][thing and Sons]
我想要
[2020-04-02][Nothing and Sons]
如何编写一个正则表达式来检查“无”之类的完全匹配 - 不区分大小写(也应该识别“无”、“nOne”等)?
【问题讨论】:
-
您可以为整个正则表达式设置
re.IGNORECASE标志或匹配例如[Nn][Oo][Nn][Ee]表示“无”。 -
thx 我怎样才能将它与另一个结合起来?
-
在括号中你可以或
|可能的匹配一起。