我想解析一个文件,并将它存储到Array
的PHP
中。但是,应遵守一些规则:正则表达式php来解析文件
- (p =“value”)应该被忽略,但应该保留
"value"
。 -
应该被忽略。- 空格应该被忽略。
- 除以
\t
和\n
。
样本字符串为:
NPD4196-2a_5_0
Geldanamycin - 0.166516 (p = 0.0068) Alamethicin - 0.158302 (p = 0.0206) 4-Hydroxytamoxifen - 0.1429 (p = 0.0183) Abietic acid - 0.133045 (p = 0.0203) Caspofungin - 0.130885 (p = 0.0432) Extract 00-303C - 0.12858 (p = 0.0356) U73122 - 0.113274 (p = 0.0482) Radicicol - 0.10213 (p = 0.0356) Calcium ionophore - 0.096183 (p = 0.0262)
所以,我们的目标是产生类似的数据结构:
Array('NPD4196-2a_5_0' => Array(Array(0 => 'Geldanamycin', 1 => '0.166516', 2 => '0.0068'), Array(...));
我有这个迄今为止写的...
while(($line = fgets($fp)) !== false){
$args = preg_split('/[\t\n (=) ]+/', $line, -1, PREG_SPLIT_NO_EMPTY);
if(count($args)){
print_r($args);
print "\n";
}
}
我在其他方面错过了什么来完成我的目标? 由于
干得好!谢谢 – cybertextron 2012-08-04 21:16:00