Skip to main content
 首页 » 编程设计

python之使用python识别字符串中的特定数字

2025年05月04日25Leo_wl

我想使用 python 3.5 在字符串中的每个“:”(冒号)之后提取一个数字

我的字符串是:

x= "RTD - Shanghai Indices - STD DLY - Indices - 11054 - ID:1053 (INACTIVE) RTD - SIX Swiss incl. SWX Europe - STD L1 - Equity - 10969 - ID:1096 (INACTIVE)" 

我用过:

 re.findall('\d+', x) 

但这会返回所有数字:

['11054', '1053', '1', '10969', '1096'] 

但最终的结果应该是:

[1053, 1096] 

请您参考如下方法:

关于:

re.findall(':(\d+)', x) 

圆括号将匹配您想要的组,前面的冒号将匹配实际文字 :。它将返回 : 之后的数字。

>>> import re 
>>> x= "RTD - Shanghai Indices - STD DLY - Indices - 11054 - ID:1053 (INACTIVE) RTD - SIX Swiss incl. SWX Europe - STD L1 - Equity - 10969 - ID:1096 (INACTIVE)" 
>>> re.findall(':(\d+)', x) 
['1053', '1096']