Python正则表达式:使用.sub()方法将snake_case转换为camelCase

时间:2018-09-06 11:28:30

标签: python regex

我编写了一个python正则表达式,将snake_case转换为camelCase,如下所示:

import re

snake_regex = re.compile(r'([a-z])_([a-z])')

snake_case因此由a-z(第一组)之间的一个字符加上下划线加上a-z(第二组)之间的另一个字符来标识。 要转换为camelCase,我使用sub()方法自己替换组1,然后省略下划线,并用其大写字母替换组2,如下所示:

snake_regex.sub(r'\1' + r'\2'.upper(), 'snake_case_is_nice')

但是,第二组总是被自身替换,就像未应用.upper()方法一样。请怎么回事?

示例:

snake_regex.sub(r'\1' + r'\2'.upper(), 'snake_case_is_nice')

给我:“ snakecaseisnice”,而我期望“ snakeCaseIsNice”

0 个答案:

没有答案