Python - 查找一个数字,然后从字符串中复制它

时间:2016-04-09 01:19:33

标签: python arrays string

所以我有一个例如"abdc54sgh"的字符串,我需要从字符串中复制54。问题是数字之前的变化可能会有所不同。 E.J。字符串可以是"hjsd23jsy""abvt12hbsy"或任何其他字符串。所以我只需要复制第一个中的数字23和第二个中的数字12并将其分配给变量。

2 个答案:

答案 0 :(得分:5)

使用正则表达式:

import re
s = "abdc54sgh"
pattern = re.compile("\d+")
pattern.findall(s)

或列表理解和isdigit()

s = "abdc54sgh"
int("".join([x for x in s if x.isdigit()]))

答案 1 :(得分:1)

尝试以下方法:

def takeInt(st):
    return int("".join([ch for ch in st if not ch.isalpha()]))
>>> takeInt("hjsd23jsy")
23
>>> takeInt("abvt12hbsy")
12
>>>