我正在分析数据提要,其中的数据有点像这样
RAM 4 GB DDR3
RAM 16GB DIMM
memory 4GB DDR3 MHz // no value for MHz
memory 4GB DDR3 1333 MHz // no the order of MHz is not fixed
ram 6GB, 1333 MHz, DDR3 // comma used as delimiter
Processor Intel Core i7-3612QM
Processor Intel Core i7 2630QM
processor i3-380,2.53 GHz //380 used for model number instead of 380M and model number separated by '-' and clock speed separated by ','
Processor Core i3-380 2.53 GHz
Processor Intel Ci3 - 2330 (2nd Gen), 2.53 GHz // multiple symbols used as delimiters(',','-')
Hard drive 500GB 5400RPM
Hard Disk Drive 1.5 TB
Hard Disk 256 GB
现在我需要分析每个规格的含义,ram 6GB, 1333 MHz, DDR3
我需要弄清楚 6GB 是容量,1333 MHz 是频率,DDR3 是内存的类型。但是您可以看到的问题是这些非常不规则(有些条目有一些字段而没有其他字段,有时空格用作分隔符,有时,
是 s,有时-
是 s)。我的第一反应是使用正则表达式,但我很快意识到这很愚蠢。然后我认为我可以split
在分隔符上(,
在上述情况下),但即使分隔符也不是固定的。此外,这种方法对于像这样的条目将无用memory 4 GB 1333 MHz DDR3
使用空格作为该条目的分隔符会使它看起来4
GB
1333
MHz
不同,但实际上4 GB
和1333 MHz
是不同的。另外,我如何以编程方式决定Intel Core i3
,,并暗示英特尔酷睿 i3?我知道我必须告诉图书馆一次,并且意思相同。但后来分析文本时应该能够弄清楚。上面提到的条目列表显示了条目的可变性。是否有一些 python 库(或任何其他语言)可以帮助我处理这些任务?Core i3
i3-380
Ci3
Intel Core i3
Core i3
Ci3