python – 用于获取字符后字符串中所有数字的正则表达式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 用于获取字符后字符串中所有数字的正则表达式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含940字,纯文字阅读大概需要2分钟。
内容图文
![python – 用于获取字符后字符串中所有数字的正则表达式](/upload/InfoBanner/zyjiaocheng/810/43360da723a7496fa1e2a53e375b7f39.jpg)
我试图解析以下字符串并返回最后一个方括号后的所有数字:
C9: Title of object (foo, bar) [ch1, CH12,c03,4]
所以结果应该是:
1,12,03,4
字符串和数字会改变.重要的是得到'[‘之后的数字,不管它前面有什么字符(如果有的话).
(我在python中需要这个,所以也没有原子组!)
我已经尝试了我能想到的一切,包括:
\[.*?(\d) = matches '1' only
\[.*(\d) = matches '4' only
\[*?(\d) = matches include '9' from the beginning
等等
任何帮助是极大的赞赏!
编辑:
我也需要在不使用str.split()的情况下执行此操作.
解决方法:
您最好在最后一个[括号后面的子字符串中找到所有数字:
>>> s = 'C9: Title of object (fo[ 123o, bar) [ch1, CH12,c03,4]'
>>> # Get substring after the last '['.
>>> target_string = s.rsplit('[', 1)[1]
>>>
>>> re.findall(r'\d+', target_string)
['1', '12', '03', '4']
如果你不能使用split,那么这个可以使用前瞻断言:
>>> s = 'C9: Title of object (fo[ 123o, bar) [ch1, CH12,c03,4]'
>>> re.findall(r'\d+(?=[^[]+$)', s)
['1', '12', '03', '4']
这将找到所有数字,后面只有非[字符直到结尾.
内容总结
以上是互联网集市为您收集整理的python – 用于获取字符后字符串中所有数字的正则表达式全部内容,希望文章能够帮你解决python – 用于获取字符后字符串中所有数字的正则表达式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。