我有一个格式为results_item12345的字符串。数字部分的长度为四位或五位数。字母将始终是小写的,并且在非数字部分的某处将始终有下划线。
我尝试用下面的代码来解压它:
import re
string = 'results_item12345'
re.search(r'[^a-z][\d]',string)但是,我只得到了最左边的两位数。我怎样才能得到整个数字?
发布于 2012-10-12 03:11:05
假设您只关心字符串末尾的数字,下面的表达式匹配字符串末尾的4或5位数字。
\d{4,5}$否则,下面将是与所提供的要求匹配的完整正则表达式。
^[a-z_]+\d{4,5}$发布于 2012-10-12 03:13:18
如果只想匹配字符串中的任何数字,可以搜索:
r'[\d]{4,5}'如果您需要某种类型的验证,则需要使用:
r'^result_item[\d]{4,5}$'发布于 2014-05-27 19:12:32
import re
a="results_item12345"
pattern=re.compile(r"(\D+)(\d+)")
x=pattern.match(a).groups()
print x[1]https://stackoverflow.com/questions/12846815
复制相似问题