2011/12/10 TweenはJIS順じゃなくてUnicode順だそうなのでそれに合わせて拡張しました
Twitter上での日本語ハッシュタグフィルタリング その2
————
うざい日本語ハッシュタグをタイムライン上から消し去る方法 : さざなみ壊変
というのが紹介されてまして
日本語ハッシュタグを正規表現で検出して、各クライアントで別タブなりに隔離しよう、というものです
確かに「あるある」ネタだったり、非公式RTを誘発するようなのだったりが多くて個人的にもどうかなと思ったので俺もフィルタリングしようと
ただ、このサイトで紹介されてる方法だとちょっと取りこぼしが発生するので、ちょこっといじってみました
と言っても、俺自身正規表現に明るくないので、これも取りこぼしあるかも知れませんがw
まず、上記サイトで紹介されているものは
#[ぁ-ヶ亜-黑]
これです。これだと、「#5秒で~」とかにひっかりません
これについては、はてブのコメントで
mizushima88これじゃ英数で始まる日本語ハッシュタグに対応できてないよ。たぶんこれでいけるはず→ #[a-zA-Z0-9]*[ぁ-ヶ亜-黑]/夜フクロウ(Mac)とJanetter2(Win)でNG動作確認
と指摘されていますのでこれをさらにいじります
これに加えて、全角の#で始まるハッシュタグを対象に加えます
(#|#)[a-zA-Z0-9]*[ぁ-ヶ亜-黑]
こんな感じで。さらに、アンダーバーもタグとして有効なので対象に加えます
(#|#)[_a-zA-Z0-9]*[ぁ-ヶ亜-黑]
長くなってきましたが、ここまでです
Twitter上では、(#|#)S+[ぁ-ヶ亜-黑] でどーよって書いてたんですが、アンダーバーだけじゃなくハイフンも対象になってしまうので違うなと思いましたw
正直これでも困りはしないと思うけどね・・・
Tween上でしか確認してませんけど多分大方フィルタリング出来てるんじゃないかなと思います多分
余計なのがフィルタリングされてたり、逆に取りこぼしてたりしたらこっそり教えてくださいw
————
さてここから2011/08/17 12:18頃追記
今日になって元サイトのはてブコメント眺めてたら、こんな事が書かれてました
touhousintyaku1文字目が全角数字の日本語ハッシュタグが流れてきてワロタ
なんだと・・・!?
よくみると確かに範囲に入ってない!
そして「#5秒で~」が取りこぼされてる!これはいかん!ということで更に長くしてみようと思います
半角英数をそのまま全角にして、後ろに入れます
(#|#)[_a-zA-Z0-9]*[a-zA-Z0-9ぁ-ヶ亜-黑]
終了ですw
まぁあとよく見たら、半角判定部分って「¥w」(¥は半角で)で纏められるそうなので
(#|#)¥w*[a-zA-Z0-9ぁ-ヶ亜-黑]
¥は半角にしておいて下さい。これでも、多分期待した動作するんじゃないかなーと思います分かりませんけどw
12:46:08, 2011/08/17匿名希望のS /
つんらじまだー?
23:22:08, 2011/08/17fabled /
永遠にまだですねーw