2007年7月25日水曜日

Jane用のNGExメモ

永遠に「書きかけ」かもしれません。

>1-1000

[>1-1000]
MsgType = 正規(含む)
MsgBody="(?:>|>)[11]\-(?:1000|1000)"
Option = 透明あぼーん, NGIDへの自動追加

>1-1000を含む書き込みをあぼーんします。

メール欄が sage 以外

[メール欄 [Not sage]]
MailType = 正規(含まない)
MailBody="sage|^$"
Option = 透明あぼーん

メール欄が sage ではない書き込みをあぼーんします。 ただし、メール欄が空欄の記事にはマッチしません。 (投稿者が2ちゃんねるの仕様を知らずにスレッドを上げる事があるため)

4文字以下のレス

[4文字以下のレス]
MsgType = 正規(含む)
MsgBody="^(?:[  ]*<br>)*[  ]*[^<]{1,4}(?:[  ]*<br>)*[  ]*$"
Option = 透明あぼーん

4文字以下の書き込みをあぼーんします。(全角文字も1文字としてカウントします)

連続英文字

[連続英文字 (6文字以上)]
MsgType = 正規(含む)
MsgBody="[^#]([a-vx-za-vx-z])\1{5}(?! *;|["'])"
Option = 透明あぼーん, NGIDへの自動追加

"aaaaa" など、6文字以上の連続した英字を含む書き込みをあぼーんします。
<span style="color: #ffffff;"> のようなCSSのカラーコードに誤爆するのを防ぐための処理を入れてあります。

漢字15文字

[漢字15文字]
MsgType = 正規(含む)
MsgBody="[一-龠]{15}"
Option = 透明あぼーん, NGIDへの自動追加

連続した15文字の漢字を含む書き込みをあぼーんします。 どこかのスレッドから借用させていただきました。

~GET

[~GET]
MsgType = 正規(含む)
MsgBody="[\d0-9](?:げっと|ゲット|get|get)"
Option = 透明あぼーん, NGIDへの自動追加

レス番ゲッターをあぼーんします。

まだ~?

[まだ~?]
MsgType = 正規(含む)
MsgBody="[まママ][~ーーぁァ]*(?:[だダ]|ダ)[~ーーぁァ]+[??]"
Option = 透明あぼーん

間延びした「まだ~?」発言をあぼーんします。

文末中傷

[文末中傷]
MsgType = 正規(含む)
MsgBody="(?:アホスレ|キモイ|イラネ|いらね|必死だな|最低だな|最悪だな|グロだな|[\((  ](?:プ|プ|はぁと)+)(?:$|[ w\( w(]|<br>)"
Option = 透明あぼーん, NGIDへの自動追加

文末の中傷発言をあぼーんします。

文意不明なレス

[文意不明なレス]
MsgType = 正規(含む)
MsgBody="^(?:[  ]*<br>)*[  ]*(?:[ !\d0-9 !]|age|sage)+(?:[  ]*<br>)*[  ]*$"
Option = 透明あぼーん, NGIDへの自動追加

「数字」「感嘆符 (!)」「age」「sage」のみで構成される書き込みをあぼーんします。

保守

[保守]
MsgType = 正規(含む)
MsgBody="^[  ]*(?:保守|ほしゅ|ホッ?シュ|hos[hy]u)[  。]*$"
Option = 透明あぼーん

保守のみの書き込みをあぼーんします。 書き込み自体は有り難いのですが、視覚スペースを増やしたいので消しています。

誤爆

[誤爆]
MsgType = 正規(含む)
MsgBody="^[  ]*↑?誤爆[  ]*$"
Option = 透明あぼーん, NGIDへの自動追加

「↑誤爆」のみの書き込みをあぼーんします。(誤爆を装った荒らし)

オレオレ

[オレオレ]
MsgType = 正規(含む)
MsgBody="(?:(?:俺|オレ|おれ|漏れ)も?){2}"
Option = 透明あぼーん

オレオレ詐欺師を消し去ります。

「死ね」「氏ね」「市ね」

[死ね]
MsgType = 正規(含む)
MsgBody="[死氏市][  ]*ね"
Option = 透明あぼーん, NGIDへの自動追加

「死ね」「氏ね」「市ね」を含む書き込みをあぼーんします。

スクリプトによる自動書き込み

[スクリプトによる自動書き込み]
MsgType = 正規(含む)
MsgBody="犯[  ]*罪[  ]*者|自[  ]*首|変[  ]*態|下[  ]*衆|知[  ]*障|池[  ]*沼|低[  ]*脳|社[  ]*会[  ]*の[  ]*ダ[  ]*ニ|溜[  ]*ま[  ]*り[  ]*場"
Option = 透明あぼーん, NGIDへの自動追加

スクリプトによる自動書き込みをあぼーんします。 当時、猛威を振るっていたのは「AntiDojin」とか「Antilo」とかその辺りのウイルスだったと思います。 現在は脅威ではありませんが、中傷コメントにもマッチするので残してあります。

空白区切り文字

[空白区切り文字 (4文字)]
MsgType = 正規(含む)
MsgBody="(?:[ w w]+[ぁ-龠]){4}(?=[ <w w]|$)"
Option = 透明あぼーん

「テ ス ト で す よ ?」のような空白区切りの文字列を含む書き込みあぼーんします。
空白文字ではありませんが、"w" 区切りにも該当し、例えば「みwなwぎwっwてwきwたw」をあぼーんできます。

縦書き (4文字)

[縦書き (4文字)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)[  ]*[^ < ](?:(?:[  ]*<br>)+[  ]*[^ < ]){3}(?=[  ]*(?:<br>|$))"
Option = 透明あぼーん

改行を利用した縦書き4文字を含む書き込みをあぼーんします。 1行置きの縦書きにも対応しています。

投稿記事のコピペ

[投稿記事のコピペ]
MsgType = 正規(含む)
MsgBody="投稿日[::][  ]*\d{2,4}/\d{2}/\d{2}\([^)]+\)[  ]*\d{2}:\d{2}:\d{2}"
Option = 透明あぼーん

2ちゃんねるの投稿記事をコピペした書き込みをあぼーんします。 Janeのデフォルトスキン(2ちゃんねるをブラウザで見たときと同じ)からコピペした書式にしか対応していないので、全てのコピペには対応できていません。 ですが、結構マッチしてくれます。

[画像リンクの連投 (1行×5 / 完全一致)]
MsgType = 正規(含む)
MsgBody="^(?:[  ]*<br>)*[  ]*(?:h?ttp://[\w-]{1,63}(?:\.[\w-]{1,63}){0,4}\.[\w-]{2,6}(?::\d{1,5}|(?![.\w\-:]))/[!=#-&(-;?-[\]-~]+\.(?:jpg|png|gif|bmp)(?:[  ]*<br>)*[  ]*){5,}$"
Option = 透明あぼーん, NGIDへの自動追加
http://test.com/test1.jpg
http://test.com/test2.jpg
http://test.com/test3.jpg
http://test.com/test4.jpg
http://test.com/test5.jpg

上記のような、画像リンクを5連投するだけの書き込みをあぼーんします。(完全一致)

[画像リンク 10連投 (部分一致)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)[  ]*(?:h?ttp://(?<domain>[[:alnum:]\-]{1,63})(?:\.\g<domain>){1,5}(?::\d{1,5})?/[!=#-&(-;?-[\]-~]+\.(?:jpg|png|gif|bmp)(?:[  ]*<br>[  ]*)*){10}"
Option = 透明あぼーん, NGIDへの自動追加
テスト
http://test.com/test1.jpg http://test.com/test2.jpg
http://test.com/test3.jpg http://test.com/test4.jpg
http://test.com/test5.jpg http://test.com/test6.jpg
http://test.com/test7.jpg http://test.com/test8.jpg
http://test.com/test9.jpg http://test.com/test10.jpg

上記のような、画像リンクの10連投を含む書き込みをあぼーんします。(部分一致)

アンカー5連投

[アンカー5連投 (行内)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)(?:[^<]*?(?:<a [^<]+</a>|(?:&gt;|>){1,2}\d+)){5}"
Option = 透明あぼーん, NGIDへの自動追加

>>1>>2>>3>>4>>5 のような行内にレスアンカーを5連投した書き込みをあぼーんします。

[アンカー5連投 (1行×5)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)[  ]*(?:(?:&gt;|>){1,2}\d+|<a [^>]*>&gt;&gt;\d+(?:-\d+)*</a>)(?:[,-]\d+)*(?:[  ]*<br>[  ]*(?:(?:&gt;|>){1,2}\d+|<a [^>]*>&gt;&gt;\d+(?:-\d+)*</a>)(?:[,-]\d+)*){4}"
Option = 透明あぼーん, NGIDへの自動追加
>>1
>>2-3
>5-7,9,15
>>20-30
>31,32,33,34,35

上記のような、レスアンカーを改行区切りで5連投した書き込みをあぼーんします。

スキーム5連投 (行内)

[スキーム5連投 (行内)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)(?:[^<]*?://){5}"
Option = 透明あぼーん
ttp:// ttp:// ttp:// ttp:// ttp://

上記のような、行内で :// を5回繰り返す書き込みをあぼーんします。
上の例では、間に空白を挟んでいますが、どんな文字列を挟んでもマッチします。(HTMLタグを除く)

a要素 HTMLコード 連投 (1行×5)

[a要素 HTMLコード 連投 (1行×5)]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)[  ]*(?:&lt;a (?:(?!&gt;)[^<])*href *= *(?:&quot;|')? *https?://(?:(?!&lt;)[^<])+&lt;/a&gt;(?:[  ]*<br>)*[  ]*){5}"
Option = 透明あぼーん
<a href="http://test1.com/">http://test1.com/</a>
<a href="http://test2.com/">http://test2.com/</a>
<a href="http://test3.com/">http://test3.com/</a>
<a href="http://test4.com/">http://test4.com/</a>
<a href="http://test5.com/">http://test5.com/</a>

上記のような、a要素のHTMLソースを5行繰り返す書き込みをあぼーんします。

HTML文字実体参照 5連投

[HTML文字実体参照 5連投]
MsgType = 正規(含む)
MsgBody="(?:&(?!(?:amp|gt|lt|quot);)(?:[a-z]{2,5}|#(?:0*\d{1,5}|xe?0*[\da-f]{2,5}));?[  ]*){5}"
Option = 透明あぼーん

HTML文字実体参照数値文字参照 を5連投した書き込みをあぼーんします。(各用語の説明はリンク先を参照してください) システムで使われている &amp; > < " は検索対象から除きます。 # 2ちゃんねるでは、シングルクオート ' はエスケープしていないようです。

1行文の2連投

[1行文の2連投]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)(?![  ]*<br>)((?:[^<]|<a [^<]+</a>)+)<br>\1(?=(?:<br>|$))"
Option = 透明あぼーん, NGIDへの自動追加
正規表現を覚えたい
正規表現を覚えたい

上記のような、「1行文」の繰り返しを含む書き込みをあぼーんします。
「1行文の3連投」に変えたい場合は、<br>\1(<br>\1){2} に置換してください。

複数行の2連投

[複数行の2連投]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)(?![  ]*<br>)((?:[^<]|<a [^<]+</a>){10,}<br>.*)(?:<br>[  ]*)*<br>\1"
Option = 透明あぼーん, NGIDへの自動追加
こんにちは、Janeさん。
今日もいい天気ですね。
こんにちは、Janeさん。
今日もいい天気ですね。

上記のような、「複数行の文章」を改行で挟んで繰り返す書き込みをあぼーんします。 間に空行を挟んでもマッチします。

行内の文字列 5連投

[行内の文字列 5連投]
MsgType = 正規(含む)
MsgBody="(?:^|<br>)[  ]*([^ < ]{3,})(?:[  ]+\1){4}"
Option = 透明あぼーん
てすと てすと てすと てすと てすと

上記のような「行内の文字列」を空白文字で挟んで5回繰り返す書き込みをあぼーんします。

アミトーンの記号連投

[アミトーンの記号連投 (1文字×4)]
MsgType = 正規(含む)
MsgBody="(["',:;])([  ]*\1)\2{2}"
Option = 透明あぼーん, NGIDへの自動追加

:::: のように、記号1文字を連投してアミトーンを貼るAAをあぼーんします。
アミトーンは巨大AAで頻繁に使われます。

[アミトーンの記号連投 (2文字×3)]
MsgType = 正規(含む)
MsgBody="((["',.:;])(?!\2)["',.:;])([  ]*\1)\3"
Option = 透明あぼーん, NGIDへの自動追加

:;:;:;:; のように、記号2文字を連投してアミトーンを貼るAAをあぼーんします。

巨大AA (記号の並列)

[巨大AA (記号の並列)]
MsgType = 正規(含む)
MsgBody="([()/|ヽ()/\|])(?= *[_  ̄_]{2})[ _ _ ̄]+\1"
Option = 透明あぼーん, NGIDへの自動追加

/  / のように、空白文字の両側に同じ記号がある書き込みをあぼーんします。
巨大AAは空白文字を利用して空間を作る性質があるため、かなりのAAに対応できます。
if( ($a==1) && ($b==2) ) のようなプログラムコードに誤爆するのを防ぐために半角空白を除く空白文字が2回以上連続した文字列に限定しています。

巨大AA (記号の線対称)

[巨大AA (記号の線対称)]
MsgType = 正規(含む)
MsgBody="/[ _ _ ̄]+\|\[ _ _ ̄]+/|[((](?! *[))])[ _ _ ̄]+[))]"
Option = 透明あぼーん, NGIDへの自動追加

/ ̄ ̄\ のような空白文字を挟んで記号が線対称に並ぶ書き込みをあぼーんします。
は空白文字ではありませんが、空間を作るために利用されることが多いため、表現に追加しています。

台詞用ふきだし (名前)

[台詞用ふきだし (名前)]
MsgType = 正規(含む)
NGName = "^\?[\-_─_ ̄]+(?:(?:[/|/\|]{2}|[vVV])[\-_─_ ̄]+)?[//]?$"
Option = 透明あぼーん

漫画で台詞を表すのに使われるふきだしを名前欄で使用している書き込みをあぼーんします。

ラベル: , ,

0 件のコメント:

コメントを投稿

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

<< ホーム