タグ

regexpに関するftnkのブックマーク (26)

  • 電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所

    Shibuya.pm #16 「夏の正規表現祭り」で、正規表現のお話をさせていただきました。 まぁ、「電話番号にマッチする正規表現」とか「郵便番号にマッチする正規表現」とかよく書かれてるけど、「どれもこれも手緩いよね」って話。 あ、だいぶはしょったかな。 とりあえずスライドに書いたので、発表をご覧になってない方はスライドからご覧ください。 ふと見返すと、このブログで電話番号の正規表現を公表するのは 3 度目ですが、あれからだいぶ経ってますね。 今ではもっと厳密な正規表現を作っています。 そして、Number::Phone::JP に続き、Number::ZipCode::JP という酔狂なモジュールが公開された記念で、郵便番号にマッチする正規表現を今回初めて公開しますが、そもそもここまで厳密な正規表現が公開されること自体、邦初公開ってヤツでしょう。 Shibuya.pm でも言いましたが

    電話番号、郵便番号にマッチする真の正規表現 : にぽたん研究所
  • Rubular: a Ruby regular expression editor and tester

    Rubular is a Ruby-based regular expression editor. It's a handy way to test regular expressions as you write them. To start, enter a regular expression and a test string. Or you can try an example.

    Rubular: a Ruby regular expression editor and tester
  • Unicodeで「漢字」の正規表現 – ものかの

    改訂:2017/07/22 Unicode 10.0に合わせて書き直し。正規表現を簡易にしようとしてやりすぎていたのを修正。 改訂:2023/03/21 U+30000以降を追加。InDesignの正規表現を追記。 正規表現で漢字の範囲指定をする場合、Unicodeではどうするかが悩ましいところです。 Unicodeの漢字の範囲として [一-龠] にしている例を見かけます。しかしこれは旧規格JIS X 0208の漢字が含まれる範囲をUnicodeの中から切り出しているだけです。互換漢字ブロックをまるごと取りこぼしているので、WindowsのシフトJIS(CP932)の拡張漢字に当たるものが含まれていません。現規格JIS X 0213の第3・第4水準漢字も考慮されていません。簡易な範囲指定だとしても、新常用漢字の「𠮟」が含まれておらず、今から見るとあまりに時代遅れです。 Unicodeのす

    Unicodeで「漢字」の正規表現 – ものかの
  • 米Google、高速・低メモリ消費の正規表現ライブラリ「RE2」を公開 | OSDN Magazine

    Googleは3月11日、正規表現ライブラリ「RE2」を発表した。動作が高速で「スレッドフレンドリー」な点が特徴。従来のバックトラック型正規表現ライブラリの代替として開発を進めていく。 Googleによると、同社はCode SearchやSawzallといったインフラやアプリケーションで正規表現を利用しているが、バックトラックアルゴリズムを利用した従来の正規表現実装では入力データに対し処理時間が指数的に増加することが問題となっていた。また、固定サイズのスタックを持つC++のマルチスレッドプログラムの場合、従来の正規表現実装ではスタックを使い切ってスタックオーバーフローを発生させることがあったという。これらを解決するために独自の正規表現エンジンを開発したとのこと。 RE2はどのような入力や正規表現に対しても一定の小さいメモリ量で動作するように開発されているのが特徴。オートマトン理論の下、処

    米Google、高速・低メモリ消費の正規表現ライブラリ「RE2」を公開 | OSDN Magazine
    ftnk
    ftnk 2010/03/15
    バックトラック
  • 正規表現基礎文法最速マスター With Perl - 小池啓仁 ヒロヒト応援ブログ By はてな

    Perlでの正規表現のサンプルと文法一覧です。 他の言語をある程度知っている人はこれを読めば正規表現の基礎をマスターして正規表現を書くことができるようになっています。 簡易リファレンスとしても少し利用できると思います。 他言語からの人は、正規表現を使う機会がなかったかもしれませんが・・・。 Perlでは、正規表現を使うための言語と言っても過言ではありません。 正規表現を使うことによりテキスト(文字列)編集処理が飛躍的に楽になるのです。 では、まずはじめにテストデータ、family.txt を用意します。 このテストデータを元にしてサンプルプログラムを踏まえて解説をしていきますね。 ・family.txtファイルの内容 macha koike yachu koike chaichan koike hiro koike mama koike papa koike koike 6 ni-bo-

    正規表現基礎文法最速マスター With Perl - 小池啓仁 ヒロヒト応援ブログ By はてな
  • [O] Emacs の正規表現

    Emacs の正規表現 Tweet [日記] 先日、m4 で使える正規表現がEmacsとほぼ同じであることを知った。 ということで Emacs の正規表現を調べ直してみる。 参考資料 英語のマニュアルと、入門 GNU Emacs 第2版を眺めました。最新版は3版です。 入門 GNU Emacs 第3版 [Amazonで詳細を見る] - GNU Emacs Manual - Regexps -- http://flex.ee.uec.ac.jp/texi/emacs-jp/emacs-jp_53.html - GNU Emacs Manual -- http://www.gnu.org/software/emacs/manual/html_mono/emacs.html#Regexps - GNU Emacs Lisp Reference Manual -- http://www.gnu.o

  • yagrep: GNU grep with Oniguruma

    yagrepとは? 正規表現エンジンとして、 鬼車を組み込んだ GNU grep です。オプション指定により、POSIX EREや Perl5互換の正規表現を使うことができます。 yagrep 最新版(2009/03/31) ddd871d81dd572d3f50bd9a58ee86b88 *yagrep-20090331.zip 811af9936dbfe1b057377b6227fe81d86a6d8b70 yagrep-20090331.zip 以下 readme.jaより yagrep はGNU grep 2.5.4の正規表現エンジンを鬼車に換えたものです。 このため、Perl互換の正規表現を日語対応して使うことができます。 COPYINGというファイルにある記述に従い、自由に再配布することが できます。ソースコードは要求があれば開示します。宛先はこの文書の 末尾にあります。 現

    ftnk
    ftnk 2009/03/29
    正規表現エンジンとして、 鬼車を組み込んだ GNU grep
  • 住所にマッチする正規表現 | twk @ ふらっと

    Live nude webcam chat IntroductionLive nude webcam chat has become increasingly popular as a form of online entertainment and communication. This unique platform allows individuals to connect with models in real-time, engaging in intimate experiences through video chat. With the advancements in technology and the widespread availability of high-speed internet connections, live nude webcam chat has

    ftnk
    ftnk 2008/09/29
  • http://higashizm.sakura.ne.jp/reg/

  • http://sunone.dyndns.org/qmemo/memo.php?memo_id=40

    ftnk
    ftnk 2008/07/10
  • Narcissus の正規表現: Days on the Moon

    「前のエントリで書き忘れてた - 最速チュパカブラ研究会」にて、Narcissus で使われている正規表現が参考になるという話が出ています。 文字列リテラル /^"(?:\\.|[^"])*"|^'(?:[^']|\\.)*'/ 正規表現リテラル /^\/((?:\\.|[^\/])+)\/([gimy]*)/ コメント /^\/(?:\*(?:.|\n)*?\*\/|\/.*)/ 一流の人が書いたものを使いましょうというのに異を唱えるつもりはありませんが、そのままコピー & ペーストしていては意味がありません。ここはやはり一文字一文字心をこめて写経しましょう……ではなく、どうしてその書き方でうまくいくのかをきちんと考えた上で使いましょう。 文字列リテラルにマッチする正規表現 上記の文字列リテラルを表す正規表現から、一重引用符でくくられた文字列にマッチする部分だけを抜き出すと '(?:[^

    ftnk
    ftnk 2008/05/23
    文字列リテラル、正規表現リテラル、コメントにマッチする正規表現
  • (高速に)Apache の log を解析する正規表現(追記あり) : a++ My RSS 管理人ブログ

    ※(多分)最終バージョンはこちらです。 ⇒[ぴ] - Apache Combined Log を効率的にパースする正規表現メモ , Apache Combined Log 解析正規表現ベンチマークの補足 (2007/10/05) ※ベンチマークありがとうございました。 ネタ的には既出なんですが・・・ Ref: [ぴ] - Apache Combined Log を効率的にパースする正規表現メモ グーグル先生でよく教えてもらえる正規表現というのがありまして、 !^(.*) (.*) (.*) \[(.*)\] "(.*)" (.*) (.*) "(.*)" "(.*)"! これ、使ってみると 1万行解析するのに 7.617 秒かかりました。ありえない。(Let's note T5 / CentOS) で、バックトラックかからないよう、例えばこんな感じに適当に変更: !^([^\s]*) [^

  • perl - 文字列ばらしはsplit //, $strで : 404 Blog Not Found

    2007年11月27日13:30 カテゴリLightweight Languages perl - 文字列ばらしはsplit //, $strで うーん、ここがあきまへん。 [を] 転置インデックスによる検索システムを作ってみよう! 9 my @char = ($c =~ /([\x00-\x7f]|[\xC0-\xDF][\x80-\xBF]| 10 [\xE0-\xEF][\x80-\xBF]{2}| 11 [\xF0-\xF7][\x80-\xBF]{3})/gsx); 文字列をばらして(utf8の)文字一つ一つの配列にするには、バイト列に正規表現をかますのではなく、utf8文字列にしてからそれにsplit //をかますのが一番です。単にわかりやすいだけではなく、その方がずっと高速です。以下、Benchmark。 #!/usr/local/bin/perl use strict; u

    perl - 文字列ばらしはsplit //, $strで : 404 Blog Not Found
  • hellohiro.com

    DOMAIN SALE CLICK HERE TO BUY NOW +1 855-646-1390

  • AJAX Reguler EXpression eValuator

    EnglishBulgarian

  • [を] UTF-8 の文字にマッチする正規表現

    UTF-8 の文字にマッチする正規表現 2006-03-09-1 [Programming] UTF-8の文字にマッチする正規表現の素直版。 レガシーなのに対応するとき用にメモ。 [\x00-\x7f]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7] [\x80-\xBF]{3}|[\xF8-\xFB][\x80-\xBF]{4}|[\xFC-\xFD][\x80-\xBF]{5} 1 2 3 4 5 60xxxxxxx 110xxxxx10xxxxxx 1110xxxx10xxxxxx10xxxxxx 11110xxx10xxxxxx10xxxxxx10xxxxxx 111110xx10xxxxxx10xxxxxx10xxxxxx10xxxxxx 1111110x10xxxxxx10xxxxxx10xxxxx

  • UTF-8 vs. ISO-10646 : 404 Blog Not Found

    2006年03月11日13:07 カテゴリLightweight Languages一日一行野郎 UTF-8 vs. ISO-10646 これだとLiberalなUTF-8ですね。 [を] UTF-8 の文字にマッチする正規表現 UTF-8の文字にマッチする正規表現の素直版。 新旧、というのか、LiberalなUTF-8とStrictなUTF-8の違いは、RFC2044とRFC2279を見ればはっきりします。要はU+11000より上を認めるかどうかということです。今のところUnicode.orgの定義では、U+0000 - U+10FFFF しか認めていないので、そちらの定義に従うと、むしろこの正規表現はさらに短く $RE_UTF8CHAR_STRICT = qr/(?:[\x00-\x7f]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}

    UTF-8 vs. ISO-10646 : 404 Blog Not Found
  • 正規表現愛

    弊社には、アンチ正規表現の人がいますが、私は熱烈な正規表現 Lover である。 大崎氏の「Perl 正規表現雑技」とかは、正規表現 Lover 垂涎のコンテンツとして、ブラウザのリンクバーに入れている程である (嘘)。 正規表現は覚えてモノにすれば、シアワセになれる素晴らしい仕組みなのです。 昨日、Shibuya.pm のテクニカルトークに行った際「はてなでは XML 系の CPAN モジュールはあまり使っておらず、XML の parse には殆んど正規表現を使用している」という話が出てきて、嬉しさのあまり身震いした。 parser を書くのが面倒臭くて「XML::Simple 最強」とかホザいた自分に対しての自戒と、弊社の Chief Regular Expressioner という肩書を持つ (自称) 立場の人間として、たまには、正規表現ゴリゴリなネタでも書いてみようかなと思いますた

    正規表現愛
  • [を] UTF-8 で半角カナを判定

    UTF-8 で半角カナを判定 2006-11-09-3 [Programming] PerlUTF-8 で半角カナを判定するには、 顔文字みたいな正規表現を使うと良いみたい。 なお、下記では全角になっていますが、「。」「゜」は半角です。 print if /[。-゜]/; 以下、確認スクリプト utf8hankana-test.pl。 begin 755 utf8hankana-test.pl.gz M'XL("+7C4D4``W5T9CAH86YK86YA+71E<W0N<&P`1<_)2L-@$,#Q^SS%9[Q8 ML>0J1H1"]>K!>'()M48-U"A)BP<1M.[5NN];L>[[OFM]F"IXZROX5P\._&!F MF!F8XB(]X7MZB^/JW;87DV+UF4Y]'<SEDR?YP51)O5D3+`](PK>5'_><:-SX MS7L

  • Regular Expressions Cheat Sheet (V2) - Cheat Sheets - Added Bytes

    Overview The Regular Expressions cheat sheet is a one-page reference sheet. It is a guide to patterns in regular expressions, and is not specific to any single language. This is the second version of the Regular Expressions cheat sheet. The previous version can be found at http://www.addedbytes.com/cheat-sheets/regular-expressions-cheat-sheet-version-1/. If you like the cheat sheets, and want t