タグ

2007年12月11日のブックマーク (2件)

  • 正規表現の否定 #2 - odz buffer

    ref:Unknown::Programming - 文字列の先頭がある単語で始まらない正規表現って ref:odz buffer - 正規表現の否定 ちょいと考えてみたんだけど、任意の正規表現にマッチしない正規表現ってのはこうすれば作れるんではないだろうか。 sub negative_regexp { my ($re) = @_; return qr/\A(?!$re)(?:.(?!$re))*\Z/s; } 適当にモジュール化して適当にテストを書いてみたけどどうだろう。まぁ、テストが全然足りないんだけども。 とりあえず、dankogai さんあたりがツッコミを入れてくれると期待。いや、実は全然既知のネタというオチがありそうだけども。 package Regexp::Negative; use warnings; use strict; use Carp; use version; ou

    正規表現の否定 #2 - odz buffer
  • JavaScriptと二重否定 - NullPointer's

    prototype.js 1.5.1のソースでこれは何??、と、同僚に聞かれた。 Browser: { IE: !!(window.attachEvent && !window.opera), Opera: !!window.opera, WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1, Gecko: navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1 }, 論理否定演算を二回行っていて一瞬ナンダコレと思ったが…にゃるほど。 var isXHRSupported = !!window.XMLHttpRequest 値が定義されていればtrueを取得する、ただそれだけだが、論理否定演算子を二重にする発想は

    JavaScriptと二重否定 - NullPointer's
    akkun_choi
    akkun_choi 2007/12/11
    二重否定idiom