例如“example123”将是123,“ex123ample”将是None,“123example”将是None。
您可以使用正则表达式re http://docs.python.org/library/re.html module:
import re
def get_trailing_number(s):
m = re.search(r'\d+$', s)
return int(m.group()) if m else None
The r'\d+$'
string 指定要匹配的表达式,由这些组成特殊符号 http://docs.python.org/library/re.html#regular-expression-syntax:
-
\d
: 一个数字 (0-9)
-
+
:一项或多项前一项(即\d
)
-
$
:输入字符串的末尾
换句话说,它尝试在字符串末尾查找一个或多个数字。这search()
函数返回一个Match
包含有关比赛或比赛的各种信息的对象None
如果它不能符合要求。这group()
例如,方法返回与正则表达式匹配的整个子字符串(在本例中为一些数字)。
三元if
最后一行返回转换为数字的匹配数字或 None,具体取决于 Match 对象是否为 None。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)