fetus Diary
2007/12/24(月) - 手始めに meta 要素にマッチする正規表現
<(?:[mM][eE][tT][aA])(?:(?:[\x20\x09\x0d\x0a]+)(?:(?:[[:alpha:]][[:alnum:]\-\.:_]*)(?:[\x20\x09\x0d\x0a]+)?=(?:[\x20\x09\x0d\x0a]+)?(?:(?:"[^"]*")|(?:'[^']*')|(?:[[:alnum:]\-\.:_]+))))*(?:[\x20\x09\x0d\x0a]+)?(?:/)?>
……本当に良いのか? これ。XML だけなら簡単なんだけどなー
"meta" にマッチした次の (?: を ( に変更すれば、(最初にスペースが混入するけど)属性値が並んだものが取れるような気がする。
訂正。こうしないと取れないね。最後の 1 個しか。
<(?:[mM][eE][tT][aA])((?:(?:[\x20\x09\x0d\x0a]+)(?:(?:[[:alpha:]][[:alnum:]\-\.:_]*)(?:[\x20\x09\x0d\x0a]+)?=(?:[\x20\x09\x0d\x0a]+)?(?:(?:"[^"]*")|(?:'[^']*')|(?:[[:alnum:]\-\.:_]+))))*)(?:[\x20\x09\x0d\x0a]+)?(?:/)?>
コメント
コメントはありません。