文件1倍的值:解析複雜的兩個文件
....
Group 2012_fln
{
vnum 103
Type mixed
1 1167 1 2
2 7731 1 2
3 3561 1 2
4 8613 1 3
}
Group 7612_edb
{
vnum 104
Type other
1 6312 1 90
2 5241 5 45
....
文件2倍的值:
....
1167 ºÎÈ°Àı´Ş°¿
7731 ÀÌÆÄÀÇ
3561 »¡°£»ö
....
所有值已分隔與標籤。順便說一下,這兩個文件中都有數千個值。
因此,這裏是我的問題:
我需要檢查文件1.值存在與否的文件2. 如果1167或7731或3561或8613的值是不存在的文件2.
值我需要在每個組中做到這一點。如果不存在,我需要一個錯誤回聲,就像;在組xxx中,xxx vnum不存在。並繼續結束文件1.
我試圖爆炸,但在文件1中有如此多的語法,如組,{},vnum,類型等。我知道,這是非常複雜的,這就是爲什麼我寫在這裏。
我可以分析我的文件2點的值這樣的:
$line = trim($line);
$token = explode("\t", $line);
if ("" == $token[0] or "VNUM" == $token[0])
continue;
$vnum = $token[0];
$entry_name = $token[1];
所以,我真的需要一個很大的幫助,我花了我的最後兩天,在這個問題......我希望,我適當解釋。
你只關心與4製表符分隔號線匹配? – wilkesybear 2015-02-23 20:29:05
我只需要在第二個選項卡中獲取數字;如:11671 2,「1167」。 – Liveth 2015-02-23 20:30:32
你可以連續做兩次爆炸。例如:第一個爆炸在''}'上,第二個爆炸在'PHP_EOL'上。現在你已經爲每個組獲得了一個數組。使用'substr()'獲取你想要的所有行,除了前五個之外的所有行,你就完成了。 – 2015-02-23 20:35:44