VZユーザーのための,VWXによる正規表現利用のてびき
初出:nifty:FGALDC/MES/13/09142〜 (2002/06/18〜2002/07/21)
それでは実際に正規表現の構文を組み立ててみましょう。
数字はどうやら1桁か2桁におさまるようですね。それも,章は1桁でおさまり,節と項は2桁あるようです。この程度の構造はテキストから読み取ることができるでしょう。
1 章の標題
章は必ず行頭から存在し,第0章はありません。
^[1-9]
全角スペースがタイトルの直前にあり,標題は文字種が混在します。
.+
標題は本文につながっていませんのでその行は終了します。
$
まとめると,これで章だけの標題が抽出されます。
^[1-9] .+$
← 実際にこのテキストを対象にやってみましょう
章は必ず出現するので,この部分は絶対に必要です。
2.3 節の標題
章だけの場合には付かないピリオドが,節の数字の直前に付きます。
ピリオドの有無に関係なくマッチさせるには,『 』を使います。
\.?
節の数は2桁になるかもしれませんし,章の標題には現れません。
[0-9]*
まとめると,\.?[0-9]*となります。
章から節までをまとめると,章と節の標題が抽出されます。
^[1-9]\.?[0-9]* .+$
← 実際にこのテキストを対象にやってみましょう
3.4.10 項の標題
項の標題の形式は,節の形式とまったく同じです。
すべてをまとめると以下のようになります。
^[1-9]\.?[0-9]*\.?[0-9]* .+$
このようにアンダーラインやマーカーなどを引いてみて分けて考えると,比較的単純な構造であることがよくわかりますね。実際にこのテキストを対象にやってみてください。