car*_*ine 3 python regex split
我正在使用re.split()将字符串分隔为标记.目前我用作参数的模式是[^\dA-Za-z]从字符串中检索字母数字标记.
但是,我需要的是还将具有数字和字母的标记分成只有一个或另一个的标记,例如.
re.split(pattern, "my t0kens")
Run Code Online (Sandbox Code Playgroud)
会回来的["my", "t", "0", "kens"].
我猜我可能需要使用lookahead/lookbehind,但我不确定这是否真的有必要或者是否有更好的方法.
请尝试使用findall方法.
>>> print re.findall ('[^\d ]+', "my t0kens");
['my', 't', 'kens']
>>> print re.findall ('[\d]+', "my t0kens");
['0']
>>>
Run Code Online (Sandbox Code Playgroud)
编辑:下面巴特的评论更好的方式.
>>> print re.findall('[a-zA-Z]+|\\d+', "my t0kens")
['my', 't', '0', 'kens']
>>>
Run Code Online (Sandbox Code Playgroud)