0
我有一個要讀取的SD文件。我無法上傳整個文件。所以我在下面的圖片中給出了一個快照。讀取SD文件並提取有關每個片段的信息
這是解釋分子結構的SD文件(結構數據文件)。 803和AMH是兩個分子。而且,在同一分子內有幾個片段。每個片段由四個美元符號($$$$)分隔。我是一名新生兒,因爲我是一名生物醫學研究生。然而,我寫了一個腳本,它查找了$$$$的出現,然後發現了它旁邊的分子代碼(這裏是803)。
{
open (FILE, '<', "try_803.txt");
my $ligandcode="803";
while (<FILE>) {
my $nextline = <FILE>;
if ($_=~/\x24\x24\x24\x24/ && $nextline=~/$ligandcode/){
# do something
}
}
}
此代碼檢查的$$$$非常首次出現,隨後803不過,我希望它去進一步的$$$$下一次出現,隨後803,我不知道有多少次數會發生這種模式。從技術上講,我無法在手前指定片段號。你能幫我改進這個代碼並找到問題的解決方案嗎?我會很感激。
謝謝。有效。但是這個腳本正在通過$分子的整塊。我想單獨訪問每一行以執行其他功能。請幫忙 – shpr
'@lines = split(/ \ n /);' – tripleee
謝謝。但是當我用下面的代碼第4行打印在第1塊中時,第5行打印的是其他塊。 'while(){ \t my $ molecule = $ _; \t my @ lines = split(/ \ n /); \t print $ lines [3],「\ n」; '我想要指定每個塊以$$$$開頭並且在下一行中以8033開頭。所以$$$$成爲每個塊的第一行,803成爲第二行。請幫忙 –
shpr