Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用lookahead/lookahead断言拆分字符串以匹配空字符串_Python_Regex_Split - Fatal编程技术网

Python 使用lookahead/lookahead断言拆分字符串以匹配空字符串

Python 使用lookahead/lookahead断言拆分字符串以匹配空字符串,python,regex,split,Python,Regex,Split,我正在尝试拆分和重命名一些难看的变量名(例如): [1]中的:导入re 丑陋的名称=['some-sugger-Name'、'sugger:Case:Style'、'uglyNamedFunction'] 新名称=[] 在[2]中:patt=re.compile(r’(?不是对问题的直接回答,只是另一种方式-使用(必须分别处理:): 不是对问题的直接回答,而是另一种方式-使用(但必须单独处理:): Pythonre.split不能用空字符串拆分。请使用PyPi正则表达式模块。Pythonre.s

我正在尝试拆分重命名一些难看的变量名(例如):

[1]中的
:导入re
丑陋的名称=['some-sugger-Name'、'sugger:Case:Style'、'uglyNamedFunction']
新名称=[]

在[2]中:patt=re.compile(r’(?不是对问题的直接回答,只是另一种方式-使用(必须分别处理
):


不是对问题的直接回答,而是另一种方式-使用(但必须单独处理
):


Python
re.split
不能用空字符串拆分。请使用PyPi正则表达式模块。Python
re.split
不能用空字符串拆分。请使用PyPi正则表达式模块。
 In[1]: import re
        ugly_names = ['some-Ugly-Name', 'ugly:Case:Style', 'uglyNamedFunction']
        new_names = []

 In[2]: patt = re.compile(r'(?<=[a-z])[\-:]?(?=[A-Z])')

 In[3]: for name in ugly_names:
            loc_name = patt.split(name)
            new_names.append("_".join(s.lower() for s in loc_name))

        print(new_names)

Out[3]: ['some_ugly_name', 'ugly_case_style', 'uglynamedfunction']
>>> import inflection
>>>
>>> [inflection.underscore(name.replace(":", "_")) for name in ugly_names]
['some_ugly_name', 'ugly_case_style', 'ugly_named_function']