在正则表达式中匹配两个字母

时间:2019-01-06 16:32:55

标签: python regex

如何匹配与N和R一致的两个字母字符的字符串。

import re

string = 'vvvEX(1)35-5'
print(re.search(r'(N|R|[EX])\([0-9]\)\S*', string)[0])
# X(1)35-5
# expected output: EX(1)35-5

1 个答案:

答案 0 :(得分:1)

[EX]匹配单个E或单个X,而您想匹配EX子字符串。

您可以使用

(?:EX|[NR])\(\d+\)\S*
^^^^^^^^^^^

请参见regex demo

详细信息

  • (?:EX|[NR])-与EXNR(与(?:EX|N|R)相同)匹配的非捕获组
  • \(-一个(字符
  • \d+-1个或更多数字
  • \)-一个)字符
  • \S*-0个或更多非空白字符。