13時57分16秒 [Web関連]
私が運営してる、某ソフトウェアのサポートフォーラムに、外国からのSPAM投稿が絶えません…。日本語用ソフトなので、英語圏からの書き込みはないと考えて、英文のみの本文を禁止するような正規表現を書いてブロックしてたんですけど、記号を含めてくるので、なかなか阻止しきれない投稿もありました。
そこで、「句読点が1つもない投稿は全部ブロック」するように、次のように書いてみました。
変数$commentsには、投稿本文が入ってます。
if文では、句読点(「、」または「。」)がない場合を正規表現で判定しています。「!~」は「=~」の否定。だから、句読点がない場合にif文の条件が成立します。
error関数は、ブラウザにエラーメッセージを表示させる関数。
日本語の文章には、たぶん句読点くらい入るでしょう。(^^;;;
過去の投稿をざっと見てみたところ、句読点が1つも含まれていない日本文の投稿はなさそうだったので、まあ問題ないかなと。念のため入力欄のそばにも、「句読点がない投稿はブロックされてしまいます。」みたいな注意書きを掲載しておきました。
論文などをよく書く人は、もしかするとIMEの設定で、「句読点」ではなく「カンマ・ピリオド」を使うようにしてるかも知れません。その場合は、ブロックされちゃいますが。^^;
まあ、全角(2バイト文字)であれば英語圏からの投稿ではないと分かるので、全角カンマと全角ピリオドも許可してもいいでしょうけどね。
この日記へのコメントはお気軽に! コメント数:6件
NaOHさん、こんにちは。
重複したトラックバックは削除しておきましたので、お気になさらず。トラックバックありがとうございました~。(^-^)/
投稿者 にしし : 2006年05月16日 01:11
はじめまして。
「句読点のない投稿をブロック」というアイディア、素晴らしいです。使わせて頂きました。
毎日BBS Spamの削除が面倒でしたが、今日から開放されそうです。
ありがとうございました。
投稿者 よしだ : 2006年07月15日 05:37
よしださん、こんにちは。
スパム投稿は本当に困りますよね…。(-_-;)
お役に立てそうで何よりです。(^_^)
投稿者 にしし : 2006年07月17日 23:36
ぜんぜん関係ないのですが、spamメールの研究をしているものです。よろしければ迷惑メールが届くように下のメールアドレスを掲示板やホームページにアップしていただけないでしょうか?よろしくお願いします。
postmaster@mserver.matsue-ct.ac.jp
投稿者 tanaka : 2007年01月20日 22:43
tanakaさん、こんにちは。
いきなり疑うわけではないのですが、上記の投稿内容だと、tanakaさんが第三者への嫌がらせ目的で、第三者のメールアドレスをそうやって掲載している可能性もちょっと考えられる気がするのですよね。
なので、スパムメールを収集する実験を行うのであれば、
getspam@mserver.matsue-ct.ac.~
みたいに、明らかにそれと分かるようなアカウント名を使った方がいいんじゃないでしょうか。
…とまあ、余計なお節介ですが(^_^;)ふと思いましたので。
投稿者 にしし : 2007年01月21日 02:52
コメント数: 6件
こんにちは。
こちらの記事を参考にさせていただきました。
誤ってトラックバックを2回送ってしまいました。
申し訳ありませんでした。
投稿者 NaOH : 2006年05月15日 23:48