タグ

regexpに関するyaottiのブックマーク (9)

  • Regexp::Commonによる正規表現で数値やurlの書式チェック - end0tknr's kipple - web写経開発

    http://search.cpan.org/dist/Regexp-Common/ Regexp::Commonには、〜::number や 〜::URI::http 等の様々な正規表現が集められています。 Regexp::Common::number まず、Regexp::Common::numberを使用すれば、数値形式(整数や小数)チェックを簡単に実装することができます。 ※1,000のようにカンマ区切もOK。 #!C:/Perl/bin/perl use strict; use warnings; use Regexp::Common qw /number/; my @test_vals = (-1000,"-1,000",-1,0,1,100,1.0,1.5,"1000A"); for my $org_val ( @test_vals ){ #整数の数値書式check (-se

    Regexp::Commonによる正規表現で数値やurlの書式チェック - end0tknr's kipple - web写経開発
  • utf8::SWASHGETが重い - グニャラくんのグニャグニャ備忘録@はてな

    なんか動かしてるプログラムのとある関数がやたら重い。 DProfセンセ〜イ!! %Time ExclSec CumulS #Calls sec/call Csec/c Name 59.3 36.62 38.237 1 36.621 38.236 Omokute::Tamaran::Function 19.6 12.10 15.161 15223 0.0008 0.0010 utf8::SWASHGET ぎゃあ。激重いがな!utf8::SWASHGET。 で、正規表現を使う際に内部的に呼ばれているらしいけど、 ちょっと重すぎ。 http://www.nntp.perl.org/group/perl.unicode/2807 によると、 Unicode含まない正規表現使うときは、 そこだけスコープ切って、その中でuse bytesを指定してあげな! だそうです。 めんどい。 しかも日語での情

    utf8::SWASHGETが重い - グニャラくんのグニャグニャ備忘録@はてな
  • PHPの正規表現のpreg_match()関数

    Googleなどの検索エンジンで"PHP 正規表現"といったキーワードでサイトに来られている方が、多いようなので、久々にPHPの正規表現に関するメモ。 PHPには正規表現の関数として、ereg系の関数(POSIX拡張正規表現関数)と、Perl互換のpreg系の関数(Perl互換の正規表現関数)がある。ereg系は、 ereg()関数 eregi()関数 ereg_replace()関数 eregi_replace()関数 があり、preg系は、 preg_match()関数 preg_match_all()関数 preg_replace()関数 preg_split()関数 があります。リンク先はすべて、PHPのマニュアルです。PHPの正規表現について詳しく知りたい人は、このサイトを熟読することをおすすめします。 ereg()関数のページには、 注意: Perl互換の正規表現構文を使用する

  • 3. 正規表現を使う

    ここまでで、単純な正規表現をざっと見てきましたが、次は、どうやって Python の中で使うのかに話を進めましょう。 re モジュールは正規表現エンジンのインタフェースを提供し、正規表現をオブジェクト型にコンパイルして、マッチさせることを可能にします。 3.1. 正規表現のコンパイル 正規表現は RegexObject インスタンスにコンパイルされます。 このインスタンスは、パターン・マッチや文字列交換のような、様々な働きをするメソッドを持ちます。 >>> import re >>> p = re.compile('ab*') >>> print p <re.RegexObject instance at 80b4150> re.compile() に引数 flags を指定することで、特別な設定や文法の変更を実現するのに使われます。 使用可能な設定は後で見ていくことにして、ここでは例だけ

    yaotti
    yaotti 2009/04/18
    Python の生の文字列(raw string)表記を正規表現に使うことです。 "r" を前置した文字列リテラル内では、バックスラッシュは特別な扱いを受けません。 ですから r"\n" は、"\" と "n"の 2 文字からなる文字列ですが、"\n" は 1 つの改
  • 正規表現

    Javaにおける正規表現 Javaには正規表現に関する機能を実現するためのパッケージ java.util.regex があります (Java SDK 1.4 で導入)。 このパッケージにより、強力な正規表現の機能を持つ Perl とほぼ同等の機能が実現されています。 クラス java.util.regex.Pattern が正規表現を表すクラスで、このクラスの matcher メソッドによって、実際にマッチングを行うクラス java.util.regex.Matcher のインスタンスを生成します。 クラス Pattern は new ではなく、compile という static メソッドによりインスタンスを生成します。なお、static メソッドはクラスに属し、インスタンスがなくても呼び出すことができます。通常のメソッド呼び出しは「インスタンス名.メソッド名」ですが、static メソ

  • Javaで正規表現を活用する(java.util.regexパッケージ)

    Javaで正規表現を活用する(java.util.regexパッケージ):JavaTips ~Javaプログラミング編 PerlやUNIXのgrepなどで欠かせない正規表現ですが、Javaでもこれを扱うためのパッケージjava.util.regexがJ2SE1.4からコアAPIに導入されました。ここでは、正規表現自体の詳細には触れず、クラスとそのメソッドの使い方についてのみ言及することにします。 まずは、具体的なサンプルを見てみましょう。サンプルは以下のような処理を行っています。 「javaまたはclassという拡張子が付いたファイル名を表す正規表現」と、入力文字列全体がマッチするかを「matches(マッチ)」によって調べる 入力文字列に正規表現にマッチする部分文字列があるかどうかを「find(検索)」により調べる 存在した場合には「group, start, endの各メソッドによって

    Javaで正規表現を活用する(java.util.regexパッケージ)
  • 【 どのような正規表現があるのか 】

    Linuxのコマンドを「やりたいこと」でまとめました。「やりたいこと」を実行するためのコマンドと使用例を掲載しています。コマンドの基を学びたい方は「Linuxコマンド道場」を参照ください。ファイルの操作からテキスト・ファイルの処理方法まで,例題に基づいて学べます。

    【 どのような正規表現があるのか 】
  • GNU Emacs Manual - Regexps

    Go to the first, previous, next, last section, table of contents. 正規表現の構文 正規表現には構文があり,そこではいくつかの文字は特別な意味を持ちます.そ れ以外の文字は通常の文字です.通常の文字は,単純な正規表現で,その 文字自体にマッチします.特別な文字とは,`$',`^',`.', `*',`+',`?',`[',`]',`\'です.他に特別 な文字が定義されることはありません.正規表現に現われる他の文字は,すべて 通常の文字です.ただし,前に`\'がある場合は別です. たとえば,`f'は特別な文字ではありません.したがって,通常の文字であ り,文字列`f'にマッチする正規表現となります(これは文字列`ff'に はマッチしません).同様に`o'は`o'のみにマッチする正規表現です. どんな2つの正規表現a,bも連結する

  • 正規表現メモ

    \x{} \pは後続する名前が表すクラス(プロパティ、スクリプト、ブロック)に属する文字にマッチし、 \Pは後続する名前のクラスに属さない文字にマッチします。 クラスの名前が一文字のときはブレースを省略できます。 クラス名の前に^を置くことにより否定形の指定を行うことも可能です。 Perl 5.8 での変更点 Perl5.8以降(5.6でも使えたようですが)では \pや\Pで始まるプロパティ指定に標準Unicode属性を使うこともできます。 詳しくは perlunicode perlunicode - Perl における Unicode サポート を参照してください。 日語による説明が Unicodestandard にもあります。 Perl 5.8以降ではユーザーが任意のプロパティを作成することができます (IsまたはInを必ず前置)。 詳しくは perlunicode perluni

  • 1