2010/10/06

正規表現:私の覚え方。

DTPの勉強会 特別編」を受けて。
「?、+、*」の使い分けですが、私はこうやって考えてます。
実は昔、DTDの読み方を教わったときのやり方です。

(対象物が)
 必須か任意か
 単数か複数か

の二者択一の組み合わせ、すなわち2×2=4通り。
ちょっと待って、ひとつ足りないよ? と思われた方。
何も付いていないもの「無印」があります。これで4つ。

 (無印):必須で単数(必ずあって、1つだけ。複数はだめ)
 ?:任意で単数(あってもなくてもよくて、あったとしたら1つだけ。複数はだめ)
 +:必須で複数(必ずあって、数はいくつでもOK)
 *:任意で複数(あってもなくてもよくて、あったとしたら数はいくつでもOK)

「0個ある」というのがわかりづらい方(?と*ですね)、「あってもなくてもいいもの」と考えるとわかりやすいのではないでしょうか。

1 件のコメント:

  1. ありがとうございます。
    ?と*の間で迷っていましたが、違いがハッキリしました。

    返信削除