Skip to main content
 首页 » 编程设计

python之在python中使用正则表达式提取数据

2025年05月04日25虾米姐

我正在尝试解析一个包含序列号和零件号等的文件,并将它们分类到一个结构中。我想通过标记标识符来解析这个文件,但是我真的只需要我的数据结构的实际数字/代码。我需要假设所有数字/代码的长度都是不同的,但是我可以依赖于数字/代码之前的标识符,也可以依赖于每个值之后的结束行。

//Text file with serials and information 
Serial: 523524234235 
Part Number: MHC-1251-A 
Manufacturer: KNL-ETA 
 
Serial: 523524281238 
Part Number: QLC-851 
Manufacturer: MHQ-MCE 
 
. 
. 
. 

请您参考如下方法:

在每一行上,您可以应用正则表达式来提取所需的部分,如下所示:

>>> import re 
>>> text = "Serial: 523524234235" 
>>> m = re.search(r'Serial: (\d+)', text) 
>>> m.group(1) 
'523524234235' 

您还可以使用 split 在每行中获取两个部分,然后检查第一部分以查看它是什么类型的标记,序列号、零件号等。

您的正则表达式需要一些改进。

m = re.search(r'Serial: (\d+)', text) ==> ` m = re.search(r'Serial:[\s]*(\d+)[\s]*', text)`