在多个位置分割字符串Python

时间:2020-11-06 17:12:12

标签: python string

我正试图从位于字符之间的字符串中获取一组数字。

这里是一个示例:NC123456Sarah Von Winkle

NC是字符串中唯一可以保证的部分,名称Sarah可以是任何东西,所以我不能只用'S'和'C'分开来尝试抓住数字。

3 个答案:

答案 0 :(得分:1)

您可以为此使用正则表达式:

import re
s='NC123456Sarah Von Winkle'
m=''.join(re.findall(r'NC(\d+).*',s))
print(int(m))

答案 1 :(得分:0)

使用regex模块:

import re
s = "NC123456Sarah Von Winkle"
t = re.findall("[0-9]+",s)
print(t)

这将给出:

['123456']

模式[0-9]将找到字符串s中所有介于0到9之间的任何数字,并且+表示我们正在搜索模式{{ 1}}。

答案 2 :(得分:0)

您可以尝试re,它是Python的标准库。

import re

sample_string = "NC123456Sarah Von Winkle"
result_digits = re.findall(r"\d+", sample_string, flags=0)

那么您的结果应该是['123456']。如果您只想使用整数而不是字符串,则可以使用int(result_digits[0])进行转换。