というわけで、その傾向と対策を。 [Perl]UTF8-flagged strings affects regexps with the "i" modifier - use GFx::WebLog; Perlではutf8フラグ付きの文字列に対するuc/lc/"i"正規表現修飾子は非常に遅いのだが,H::F::Liteでは/iを使っているので,試しに/iを... 続きを読む
Regular Expression Matching Can Be Simple And Fast (but is slow in Java, Perl, PHP, Python, Ruby, ...) Russ Cox rsc@swtch.com January 2007 Introduction This is a tale of two approaches to regular expression matching. One of them is in widespr... 続きを読む
(タイトルはid:hasegawayosukeさんが言ってたよ) ああ、まただよ… 「PHP使いはもう正規表現をblogに書くな」と言わせないでくれ 正規表現って、プログラミング言語間の差が少ないサブ言語なのに、なぜ「DAN」がつくとダメ正規表現ばかり登場するのか。うんざり... 続きを読む
The requested blog was not found -- unless you requested that of Dan Kogai (小飼 弾). かなり使えるPHPの正規表現まとめ - IDEA*IDEA 〜 百式管理人のライフハックブログ 〜メールアドレスは厳密にチェックしようとするとなかなか難しいのですが、簡単なチ... 続きを読む
まずは回答から。 正規表現で「制御文字以外」のチェック - ockeghem(徳丸浩)の日記 文字エンコーディングの妥当姓 制御文字(\x00〜\x1f, \x7f)のチェック 文字列長のチェック このうち後ろ二つを正規表現として書くにはどうすればいいかを考えていました。 こ... 続きを読む
php, oniguruma, regex追記: どっちが正しいとかそういう話ではないので念のため...。id:ockeghem さんの、「POSIX正規表現の[:print:]は改行やタブがマッチするかどうかがPerlとPHPで異なりますね。Perlはマッチしない、PHPはマッチする。どっちが正しいんだ? ... 続きを読む
一般に、セキュアコーディングの基本として入力値の検証(Validation)をせよということになっていますが、これが変な方向に行くといわゆる「サニタイズ」のような手法になってしまいます。以前も指摘したように、アプリケーションとしてのValidationは仕様に従... 続きを読む
また例によってニッチなことを、って「 iVoca でローマ字入力に対応」のために必要だったからなんだけど。 使って良い文字種の範囲に収まっているか、なら正規表現で簡単にチェックできる。 拗音の類(小さいゃゅょぁぃぅぇぉ)や促音(小さいっ)は周りの文字... 続きを読む
ありそうで意外と見あたらなかった、住所にマッチする正規表現。と言うことで、作ってみました。 今回は、住所と、そうでないものが混じっている中から、住所の文字列と思われるものを抽出して、Googleマップへのリンクを張るようなブックマークレットにしまし... 続きを読む
基本値: 5.0 (警告) [NVD値] 攻撃元区分: ネットワーク 攻撃条件の複雑さ: 低 攻撃前の認証要否: 不要 機密性への影響(C): なし 完全性への影響(I): なし 可用性への影響(A): 部分的 The Perl Foundation Perl 5.8.8 ミラクル・リナックス Asianux Server 3 for... 続きを読む
[cut] 'ó' is latin letter 'o acute' Bug ocurs usually when 'ans' contains one or more 'ó' characters (low -or uppercase) (althought phrase 'Ó ' works, 'Ó ' dumps the core) Words with more, different unicode characters works fine. ------------... 続きを読む
_ Mono の正規表現 JIT (を誰か試して) tamarin-devel を見ていたら, "Mono のやつらは正規表現を JIT するらしいぜオレもやるぜ" という旨のメールがあり, Mono のやつらのページをリンクしていた. 今年の 2 月頃にやろうとしていたらしい. Mono のコードをざ... 続きを読む
Perl の正規表現リテラル中の変数展開では、文法上、 解釈にあいまいさが生じることがあります。 この文章では、Perl インタプリタのソースコードから、 実装上でどのようにあいまいさが解決されるのかを説明します。 更新履歴 2008-06-05: 公開 Perl の判断 Pe... 続きを読む
ただし、これも実は厳密ではなくて、これだとSurrogate Pairの領域(U+D800 - U+DFFF)も入ってしまいますが、まあ普通そこまでやらんでもいいでしょう。 Dan the Man with Too Many Encodings to Support 追記: 成瀬さんからTBが。 はてなるせだいあり - [Char]U... 続きを読む
正規表現ベースの字句解析器を書くときは、narcissusというJSベースのJS処理系のコードを見るといいですhttp://mxr.mozilla.org/mozilla/source/js/narcissus/jsparse.js面倒な正規表現の模範解答が載ってます。下手に自分で考えて誤爆するより、一流の人が書い... 続きを読む
We're done with the first 80%, and well into the second 80% Perl 6の開発状況に関しての Larry Wall の発言 ■ Perl 5.10 で拡張された正規表現 Perlについての質問箱 33箱目 http://pc11.2ch.net/test/read.cgi/tech/1192463997/814- 814 デフォルトの名無... 続きを読む
ということで、今回はJavaScriptのパターンマッチネタです。 比較するメソッドとしてmatch、search、test、exec、の4つを取り上げます。 それぞれ性質が異なるので、使う場合は注意が必要です。 比較のために、以下のようなサンプルを作ってみました。 <script ... 続きを読む
章の目次 正規表現の概要 正規表現の構文 正規表現のメタ文字 正規表現のメタ文字の一覧 マッチ変数の一覧 量指定子の一覧 アンカーの一覧 テキスト修飾子の一覧 ワード境界の罠 正規表現のエスケープシーケンス エスケープシーケンスの一覧 パターンマッチ演算... 続きを読む
講義資料 2007-04-17: 01 この授業の概要、正規表現、Ruby 資料に説明があるメソッド: p, Regexp#=~ 2007-04-24: 02 egrep もどきを作る words: UNIX用(LF), Windows用(CRLF) 資料に説明があるメソッド: Regexp.compile, Array#[], Array#[]=, open, IO#gets, I... 続きを読む