我正在尝试创建一个regex语句,它将选择一个regex或另一个regex,例如:
string = '123 Test String'
pattern = r'( ?)([T](?P<name1>\w+))|([A](?P<name2>\w+))'
m = re.search(pattern, string)基本上,我希望正则表达式从另一个正则表达式中选择一个。
发布于 2014-07-12 01:41:25
通过在您的模式中使用交替(或)操作符"|“,您可以有效地将字符串与两个正则表达式进行比较。如果字符串与"|“两侧的表达式匹配,则re.search将返回MatchObject。
请参阅Python documentation
或者“or”运算符。如果A和B是正则表达式,则A|B将匹配任何与A或B匹配的字符串。|优先级非常低,以便在交替使用多字符字符串时能够合理地工作。Crow|Servo将匹配Crow或Servo,而不是Cro、'w‘或'S’以及ervo。
https://stackoverflow.com/questions/24703173
复制相似问题