0
A
回答
5
您可以使用itertools.groupby
和布尔isdigit
函数。
from itertools import groupby
test1 = '123ABC'
test2 = '2B'
test3 = '10E'
def custom_split(s):
return [''.join(gp) for _, gp in groupby(s, lambda char: char.isdigit())]
for t in [test1, test2, test3]:
print(custom_split(t))
# ['123', 'ABC']
# ['2', 'B']
# ['10', 'E']
2
这可以很容易地使用re
模块来完成:
>>> import re
>>>
>>> re.findall('[a-zA-Z]+|[0-9]+', '1234ABC')
['1234', 'ABC']
>>> re.findall('[a-zA-Z]+|[0-9]+', '2B')
['2', 'B']
>>> re.findall('[a-zA-Z]+|[0-9]+', '10E')
['10', 'E']
>>> # addtionall test case
...
>>> re.findall('[a-zA-Z]+|[0-9]+', 'abcd1234efgh5678')
['abcd', '1234', 'efgh', '5678']
>>>
正则表达式的使用是非常简单的。这里是快速穿行:
[a-zA-Z]+
:匹配一个或多个字母小写或上|
或...[0-9]+
:一个或多个完整的数字
2
另一种方式用re包解决它
r = re.search('([0-9]*)([a-zA-Z]*)', test_string)
r.groups()
相关问题
- 1. 如何在python中将字符串拆分为多个部分?
- 2. 如何将unicode字符串拆分为多个字符?
- 3. 将字符串拆分为字符串
- 4. 将字符串拆分为字符串
- 5. 在Python中,如何将字符串拆分为多个整数?
- 6. 根据字符宽度将字符串拆分为多行(python)
- 7. 如何在python中将字符串拆分为字符?
- 8. 将字符串拆分为多个较小的字符串
- 9. Android-将字符串拆分为多个字符串
- 10. 将字符串拆分为多个字符串组
- 11. 将SQL字符串拆分为多个字符串
- 12. 将CSV字符串拆分为PHP中的多个字符串
- 13. 如何将字符串拆分为单个字符串?
- 14. 如何将字符串列拆分为4个字符串列?
- 15. PHP:如何将一个数字拆分为多个字符串
- 16. 如何在Python中将多行字符串拆分为多行?
- 17. 使用拆分将字符串拆分为2个字符组?
- 18. Python:使用分隔符将字符串拆分为多行
- 19. 将字符串拆分为多个字符串(当某个字符发生时)
- 20. 将lua字符串拆分为字符
- 21. php将字符串拆分为字符
- 22. PatternSyntaxException将字符串拆分为“*”字符
- 23. 如何将字符串拆分为多个html文本字段
- 24. 将字符串拆分为两个div,并将其拆分为字符串php
- 25. 将字符串拆分为“。”
- 26. 将字符串拆分为“|”
- 27. 试图用Python将字符串拆分为多个部分
- 28. 如何将字符串拆分为字母字符串和数字字符串?
- 29. C#拆分字符串 - 将字符串拆分为数组
- 30. 蟒蛇 - 拆分字符串列表分为多个字符串
你打算拆分1234AB C'到'123'和'ABC'?如果是这样,忽略中间的'4'的标准是什么?事实上,你所展示的例子的分裂标准是什么? – smac89
目前尚不清楚您是否想从字符串中解析数字。请编辑你的问题。 – Javier