データの切り取りかた

データを切り取るには正規表現を用いた。データは、*.dat あるいは *.txt というテキスト形式のデータで、 1 行には特定の情報が順に並べられている。同じ列には同じ属性のものが入る。 名簿などの場合、氏名と 5 教科の成績、などであった。 文字列は \S+, 空白文字列は \s+, 整数値は \d+ で切り取った。

if
   /(\S+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/ =~ 変数
   配列や Hash 配列への分解
end

配列では、氏名は name, 成績は japanese, english, ... に入れることにすると

name[0] = $1
japanese[0] = $2
english[0] = $3
 :

Hash 配列では、データが

白米      5000
玄米      1000
黒ごま     200

であるとき、

shop[$1] = $2

とプログラムでデータを処理する。 value はそのままでは文字列として処理した。

本日の講義 / 基礎プログラミング II / 2007 年度

Madoka Nishimura <madoka@e.koeki-u.ac.jp>