2005年11月24日 星期四

Biomedical Acronym Grabber

需求

將 JJ_NN_terms 檔內的所有生物名詞,連結到 Biomedical Acronym Resolver 資料庫,找出它們的縮寫。

使用方法

在命令列下:

grabber >> 輸出檔案名稱

已知臭蟲

連線失敗時,會發生 $socket 未定義的錯誤。

程式說明

輸出到標準錯誤

Perl 輸出到標準錯誤輸出的方法為:

print STDERR 輸出;

POST 方法說明

HTTP 連線中,若是使用 POST 方法,至少必須送出下面的資訊:

  1. POST target HTTP/1.1\r\n:其中的 target 表示目標處理程式位址(不包含 http://,並且以 / 開頭)
  2. Host: host ip \r\n:其中的 host ip 代表目的地主機位址
  3. Content-Length: length \r\n:送出的 POST 資料長度
  4. 接著再送出一個 \r\n 後,才送出 POST 資料

要注意的是,在 HTTP 中,必須以 \r\n 來區隔。

Regular expression

在正規表示法中,可以使用 () 來代表某一個要記憶的成功比對的樣式,接著再利用 $ 符號來取出該樣式。參考下面的例子:

if ($content=~ /\s*\s*(.*)<\/td>/i)
print $string.",".$1."\n";

if ($IP =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/) {   # $IP 可能是合法的 IP 位址
print "第一個 ip : $1\n";
print "第二個 ip : $2\n";
print "第三個 ip : $3\n";
print "第四個 ip : $4\n";
}

參考