我想从文本中进行区分大小写的匹配。在以下情况下,我尝试使用 re.search 匹配“Ca.iNy”,我想匹配“C”应该大写的位置,其余所有字符都可能在任何情况下。如果它匹配我想为变量设置一个值的情况。
我采用了帮助表格 SO 并通过检查第一个字母是否为大写字母来实现,并且对于单次检查来说效果很好。
s = "The details belong to (Ca.iNy.) in this case"
reg = re.compile("Ca.iny.", re.I)
reg.search(s).group().startswith("C").
但是,我无法在“if else 循环”中使用它。我尝试了下面的代码,但搜索似乎不区分大小写。任何人都可以让我吗?
import re
st = "The details belong to (Ca.iNy.) in this case"
Mval = ''
if re.search(r"C(?i)a.iny", st):
Mval = "AAAAA"
elif re.search(r"(?i)Ky.", st):
Mval = "BBBBB"
elif re.search(r"(?i)M.sa.", st):
Mval = "CCCCC"
else:
Mval = "DDDDD"
print Mval