1. テストパターン1(不正確なパターン) <.*?> . は、改行を除く任意の1文字。 * は、直前の表現の0回以上の繰り返しだが、 *? とすることでさらに最短一致。 よって、 < と最初の > で囲まれた任意の0文字以上の文字列のこと。 2. テストパターン2(不正確なパターン) <\/?[^>]*> \/ は、 / 文字そのもの。 / だけだと別の意味なるのでエスケープしている。 ? は、 直前の正規表現の 0 または 1 回の繰り返し。 [ ] は、文字クラス指定。 [ ] 内に列挙したいずれかの1文字。 ^ は、 [ ] 内の先頭にあれば、 [ ] 内に列挙されている指定文字以外の1文字。 * は、直前の表現の0回以上の繰り返し。 よって、< と > で囲まれ、 < の次に / が0個か1個で、残りが > 以外の文字列のこと。 言い換えれば、「テストパターン1」の <.*?>