我想将字符串u'123K
拆分为123
和K
。我试过re.match("u'123K", "\d+")
匹配数字和re.match("u'123K", "K")
匹配的字母,但他们不工作。什么是Pythonic的方式来做到这一点?将unicode字符串拆分为包含数字和字母的组件
0
A
回答
2
使用re.findall()
找到所有的数字和字符:
>>> s = u'123K'
>>> re.findall(r'\d+|[a-zA-Z]+', s) # or use r'\d+|\D+' as mentioned in comment in order to match all numbers and non-numbers.
['123', 'K']
如果你是刚刚处理这个字符串,或者如果你只是想分裂从最后一个字符的字符串,你可以简单地使用一个索引:
num, charracter = s[:-1], s[-1:]
0
您还可以使用itertools.groupby
方法,分组数字:
>>> import itertools as it
>>> for _,v in it.groupby(s, key=str.isdigit):
print(''.join(v))
123
K
相关问题
- 1. 将字符串拆分为字母数字和其他字符
- 2. 如何将字符串拆分为字母字符串和数字字符串?
- 3. 将字符串拆分为字母数组 - 双字符字母PHP
- 4. C#拆分字符串 - 将字符串拆分为数组
- 5. 将字符串拆分为字母和数字
- 6. 分割的字母数字字符串数组包含字母和数字字符分别
- 7. 将字符串拆分为包含两个对的数组
- 8. 将字符串拆分为字母数组
- 9. 将字符串中的每个字母都拆分为字母
- 10. 如何将包含unicode字符的字符串转换为unicode?
- 11. Autohotkey:将连接字符串拆分为字符串和数字
- 12. 将字符串拆分为数组C
- 13. 将字符串拆分为数组Shellllscript
- 14. Android将字符串拆分为数组
- 15. 将字符串拆分为双数组
- 16. 将字符串拆分为数组C++
- 17. 将字符串拆分为数组
- 18. Bash:将字符串拆分为数组
- 19. 创建一个包含特定字符串的数组,以及如何将字符串分成字母字母
- 20. 使用拆分将字符串拆分为2个字符组?
- 21. 将字符串拆分为字符串
- 22. 将字符串拆分为字符串
- 23. 如何将包含字符“\ n”的多行字符串拆分为bash中的字符串数组?
- 24. 如何将字符串拆分为字母和FLOAT/INTEGER号码
- 25. Swift 3:按字符串将字符串拆分为数组
- 26. 如何将字符串拆分为字符串数组?
- 27. 将字符串拆分为字符串数组
- 28. 将字符串拆分为字符串数组
- 29. 将字符串拆分为字符串数组
- 30. 将字符串拆分为字符串数组
如果字符串总是一些数字后跟一个字母,你可以使用nums,letter = string [: - 1],string [-1]' – IanAuld
for're.match',该模式应该去首先,然后是你正在评估的字符串。你有它倒退 – xgord