2007年9月3日月曜日

後述のa要素を含めてリンク化するProxomitronフィルタ

Thinking Archive(仮)で公開しているフィルタ「http Text to Link [2007/07/08]」は、以下のHTMLソースがあったとき、URLテキストからa要素の手前までをリンク化します。

<p>
http://www.nicovideo.jp/watch/<a href="http://www.nicovideo.jp/watch/sm111111" class="video">sm111111</a><br />
http://www.nicovideo.jp/<a href="http://www.nicovideo.jp/mylist/111111/1111111" class="video">mylist/111111/1111111</a>
</p>

下記フィルタは、URLテキスト後述のa要素を含めてリンク化します。

[Patterns]
Name = "NicoVideo: http Text to Link with anchor [2007/09/03] test3"
Active = TRUE
URL = "$TYPE(htm)www.nicovideo.jp/watch/?"
Limit = 512
Match = ">(^$TST(Textarea=y))"
        "([^<>]++)\#(http(://|s://)\1|ttp(://|s://)\1)\2"
        "([0-9a-z_-]+{1,63}(.[0-9a-z_-]+{1,63})++{0,4}.[0-9a-z_-]+{2,6}(:[0-9]+{1,5}|(^[.0-9:a-z_-]))"
        "(/[!=#-&(-;?-[\]-~]+|(^/)))\3(^['"])"
        "(<a\s[~>]++href=$AV(http$TST(\1)$TST(\3)\4)[^>]+>)\#"
        "(^(^$TST(\4)</a>))"
Replace = ">\@<span style="font-size: small">Linked:&#160;</span>\2\3"

上記はニコニコ動画限定ですが、このやり方なら汎用フィルタにすることも可能だと思います。 問題がなさそうなら、既存の「http Text to Link」と統合します。

ラベル: ,

0 件のコメント:

コメントを投稿

登録 コメントの投稿 [Atom]

<< ホーム