アプリ開発時における文字列扱いにはセンスが問われる。.NETにおける効率的なテキスト扱いのひとつ正規表現の技法。この特集では、開発時に役立つ具体例を挙げ、すぐにでも採り入れることが可能なテクニックを解説している。
Visual Studio Magazine誌は、米国で同種のVS専門誌ナンバーワンの発行部数を誇る。ITmediaでは、発行元FTP Onlineから翻訳権を取得。米国発でホットな話題をピックアップし、月に2つの特集を定期掲載している。
理解に前提となるテクノロジー:VB.NET、C#、ASP.NET
書籍そして雑誌の記者でありながら、Webサイトの設立者であるすばらしいことのひとつが、何千もの開発者とやり取りができる点だ。Eメールを受け取らない時でさえ、われわれのサイトのどの記事がもっとも見られているかが分かる(後述、コラム「2TheMaxファミリーサイト」参照)。
おどろくことに、多くの開発者が些細な問題解決に多くの時間を費やしている。これは、「プログラマーは、繰り返されるあらゆる問題の20%を解決するために、80%の時間を費やす」という有名な「80/20ルール」の別形態だ。新しくなった「.NET 2 the Max column」では、これらの広く知られる繰り返し起こる問題の解決策を示すことで、より優れたアプリケーションを手早く開発できることを助けられることを願っている。――Francesco Balena
|
XMLは、データ交換において標準テクノロジーとなった。しかし多くのアプリケーションは、未だに原始的な「インポート」と「エクスポート」という方法を採用している。インポートやエクスポートのひとつが、「固定長フィールド」で構成されるテキストファイルに基づくものだ。
次のテキスト行を見てほしい。
John Smith New York Ann Doe Los Angeles |
テキスト行それぞれは、「名(6文字)」「姓(8文字)、そして「都市」を含んでいる。
大都市は、11文字で構成される。しかし、最後のフィールドは、その行末までのすべての文字をとるだろうと考えるのが一般的だ。
個々のフィールドを読むプログラムを構築することは、難しくない。アプリケーションでは、単純に1行読み込んで、String.Substringメソッドを使って個々のフィールドを抽出するだけだ。
しかしここでは、正規表現に基づいた異なるアプローチで例証していきたい。
次の正規表現を考えてほしい。
© Copyright 2001-2005 Fawcette Technical Publications