最近业务上遇到一个坑,解决优化的思路很明确但是坑很多,现在记录下关于python正则的坑点:
对于一个文本文件,包含很多重复的字符,这些字符串的分别为, Man 和 WoMan, SuperHeroMan
比如文本为:
Man
Man
WoMan
Man
SuperHeroMan
SuperHeroMan
WoMan
WoMan
现在业务要求将这三个字符串每个大写字母替换成 "_"再加原先大写字母的小写形式,首字母仅变为小写, 比如WoMan变成wo_man,SuperHeroMan变为super_hero_man
对于Man,如果匹配整个文本里的"Man"然后变成"man"的话,相应的WoMan, SuperHeroMan就会变成"Woman","SuperHeroman"
此时应该注意到应该采取匹配整个string的方式,正则表达为 \bMan\b , 这样只有一个完整的variable才会被匹配,不会出现部分匹配的情况