在Python中从第一个数字字符开始拆分字符串

在Python中从第一个数字字符开始拆分字符串,python,regex,Python,Regex,我需要以这种方式管理Python中的字符串: 我有一个带有“>=”、“=”、“的字符串,您可以使用以下正则表达式进行拆分: (?<=[<>=])(?=\d) 您可以使用以下正则表达式进行拆分: (?<=[<>=])(?=\d) 产出: ('>=', '1_2_3') ('<', '2_3_2') 这只是将所有内容分组,直到一个组中的第一个数字,然后将第一个数字和之后的所有内容合并为第二个数字 您可以使用mat.group1、mat.group

我需要以这种方式管理Python中的字符串:


我有一个带有“>=”、“=”、“的字符串,您可以使用以下正则表达式进行拆分:

(?<=[<>=])(?=\d)

您可以使用以下正则表达式进行拆分:

(?<=[<>=])(?=\d)
产出:

('>=', '1_2_3')
('<', '2_3_2')
这只是将所有内容分组,直到一个组中的第一个数字,然后将第一个数字和之后的所有内容合并为第二个数字

您可以使用mat.group1、mat.group2访问各个组

产出:

('>=', '1_2_3')
('<', '2_3_2')
这只是将所有内容分组,直到一个组中的第一个数字,然后将第一个数字和之后的所有内容合并为第二个数字


您可以使用mat.group1、mat.group2访问各个组。可能有更好的方法,但您可以使用捕获进行拆分,然后连接后两个元素:

values = re.split(r'(\d)', '>=1_2_3', maxsplit = 1)
values = [values[0], values[1] + values[2]]

可能有更好的方法,但您可以使用捕获进行拆分,然后加入后两个元素:

values = re.split(r'(\d)', '>=1_2_3', maxsplit = 1)
values = [values[0], values[1] + values[2]]
这将有助于:

re.split(r'(^[^\d]+)', string)[1:]
例如:

>>> re.split(r'(^[^\d]+)', '>=1_2_3')[1:]
['>=', '1_2_3']

>>> re.split(r'(^[^\d]+)', '<2_3_2')[1:]
['<', '2_3_2']
这将有助于:

re.split(r'(^[^\d]+)', string)[1:]
例如:

>>> re.split(r'(^[^\d]+)', '>=1_2_3')[1:]
['>=', '1_2_3']

>>> re.split(r'(^[^\d]+)', '<2_3_2')[1:]
['<', '2_3_2']