我的問題有點抽象,但我會嘗試在我的聲明中清楚。 (這是一個「橡皮鴨效應」的帖子,所以我會很感激,如果只是打字出來讓我到某個地方。但是,回覆,將是輝煌!)perl代碼結構後處理
我有舊的fortran代碼, (至少現在還沒有),所以我被它的尷尬輸出困住了。
我正在使用Perl來後處理不好註釋的ascii輸出文件,正如你可能想象的那樣,它是文本和數字的非常專業的混合。 「啊,完美的perl目標,」你說。是的。但是我提出的是非常糟糕的編碼,我最近得出結論。
我的問題是關於人們喜歡用來實現這樣一個目標的通用結構。正如我所說,我不喜歡我選擇的那個。
這裏的結構的一些僞代碼,我已經得出的:
flag1 = 0;
flag2 = 0;
while (<INPUT>) {
if (cond1) {
do something [like parse and set a header];
flag1 = 1;
} else {
next;
}
if (flag1 == 1 && cond2) {
do something else [like process a block of data];
} else {
next;
}
}
上述代碼的目的是能夠打破加工成對應分區的不良ASCII文件塊 - 有通過文件中的「標籤」並不多,因此涉及條件(cond1
,cond2
等)。除此之外,設置標誌的目的是通過文件跟蹤代碼的進度。
它發生,我現在是一個更好的結構可能
while (<INPUT>) {
do stuff;
}
while (<INPUT>) {
do other stuff;
}
在任何情況下,如果我的散漫激發任何想法我會很感激聽他們。
謝謝
您需要提供輸入格式的樣本和你期望 – jordanm
感謝,jordanm,爲你的評論。理想情況下,這將是一條路,我明白這一點。我選擇了僞代碼方法,因爲我不想用特別醜陋的應用程序的細節來加重問題。我必須經常這樣做,所以我認爲抽象方法可能會產生更普遍適用的東西。感謝@DVK接受的答案,我沒有失望。這正是我所尋找的東西。 – MarkWayne