講座 データ処理のためのプログラミング言語[Ⅳ]――Ruby言語編――

電子情報通信学会 - IEICE会誌 試し読みサイト
Vol.102 No.9 (2019/9) 目次へ

前の記事へ次の記事へ


講座

データ処理のためのプログラミング言語[Ⅳ]

――Ruby言語編――

Enjoy Data Processing[Ⅳ]: Ruby Language

山口実靖

山口実靖 正員 工学院大学情報学部情報通信工学科

Saneyasu YAMAGUCHI, Member (Faculty of Informatics, Kogakuin University, Tokyo, 163-8677 Japan).

電子情報通信学会誌 Vol.102 No.9 pp.897-905 2019年9月

©電子情報通信学会2019


目次

1.は じ め に

 本稿では,プログラミング言語Rubyと,データ処理でのその活用(特にテキスト処理)について,ソースコードを紹介しながら解説する.

2.プログラミング言語Ruby

 Rubyはオブジェクト指向(用語)のプログラミング言語である.動的型付け(用語)で型付け(用語)が強く,多くの場合は(ネイティブコードにコンパイルされず)インタプリタにより処理される.まつもとゆきひろ氏により開発され,日本人が開発したプログラミング言語で最も世界的に有名になった言語であると思われる.処理系はオープンソースで公開されており,誰でも無料で自由に使用することができる.

 日本人が開発した言語とあって,日本に特に愛好家が多い印象があるが,日本人に自国愛に基づき愛されているのではなく,優れた言語であるために好んで使用され,結果的に愛されているのだと私は考えている.

 海外にも愛好家は多く,WebアプリケーションフレームワークRuby on Railsの登場による注目などにより,Webアプリケーション開発を行う技術者などに使用,評価されている印象である.

 Rubyの特徴としては,テキスト処理が得意である,純粋なオブジェクト指向言語である,プログラミングが楽で楽しい,などが挙げられる.「楽しい」との特徴は,私の思い込みではなく,まつもとゆきひろ氏が各所で公言(1)しているRubyの設計の目標である.

3.ファイル入出力

 Rubyにおいては,ファイルの読込みは極めて容易に行える.以下の内容のa.txtが存在すると仮定する.

 “a.txt”

Hello,

Ruby

world!

 a.txtから1行読み込んで(すなわち"Hello,"を読み込んで)表示するには,以下のfile0.rbを作成して,ruby file0.rb a.txtと実行すればよい.

 “file0.rb”

line=gets

print line

 getsは,コマンドライン引数に指定された名前のファイル(群)からテキストを1行ずつ読み込み,その内容を返す関数である.ファイルを全て読み切りこれ以上読み込めない場合は,nilを返す.コマンドライン引数が指定されていない場合は,標準入力から読み込む.

 上のプログラムの1行目のline=getsは,コマンドライン引数に指定されたファイルであるa.txtから1行読み込み,読み込んだ内容をlineという変数に入れる処理である.2行目は,それを表示している.

 Unixのファイルの内容を表示するコマンドcatに近い(オプションはない)プログラムは以下のように書ける.


続きを読みたい方は、以下のリンクより電子情報通信学会の学会誌の購読もしくは学会に入会登録することで読めるようになります。 また、会員になると豊富な豪華特典が付いてきます。


続きを読む(PDF)   バックナンバーを購入する    入会登録

  

電子情報通信学会 - IEICE会誌はモバイルでお読みいただけます。

電子情報通信学会誌 会誌アプリのお知らせ

電子情報通信学会 - IEICE会誌アプリをダウンロード

  Google Play で手に入れよう

本サイトでは会誌記事の一部を試し読み用として提供しています。