擅长:python、mysql、java
<p>您可以使用正则表达式查找所有出现的数字,如下所示:</p>
<pre><code>import re
s = 'somekindoftext123withthis445'
nums = [int(x) for x in re.findall(r'\d+', s)]
print(nums)
# [123, 445]
</code></pre>
<p>但是,如果不想使用正则表达式而使用循环,则可以执行以下操作:</p>
<pre><code>s = 'somekindoftext123withthis445'
num = 0
nums = []
ok = False
for c in s:
if c.isdigit():
num *= 10
num += int(c)
ok = True
else:
if ok:
nums.append(num)
num = 0
ok = False
if num:
nums.append(num)
print(nums)
# [123, 445]
</code></pre>