タグ

正規表現に関するtetramのブックマーク (4)

  • 正規表現でちょっと便利に文字列検索

    こんにちは、開発担当の森です エディタやプログラムなどでちょっと条件を付けて検索・置換したいとき、正規表現が使えるとメッチャ楽ですよね! もちろん Sleipnir の開発においても正規表現は各所で活躍しています。 先日、「正規表現って名前の割に方言(処理系によって違う書き方)が多いよね」という話が出たのですが、 そのとき「ひょっとして拡張構文を使えば、今まで出来無いと思い込んでいたこともできるのかも」と思い立ったので、調べてみました。 ちなみに、今回の記事の表現は余り特殊な表現は使用しておりませんので JavaScript, Perl など広い処理系で使用できるはずです。 ○○ AND ×× の正規表現 //「フェンリル」と「スレイプニル」を両方含む行 ^(?=.*フェンリル)(?=.*スレイプニル).* こんな風に書くことで、AND 演算が表現できます。 // A~Z すべてのアルフ

    正規表現でちょっと便利に文字列検索
  • Objective-Cで正規表現を使う その2 : As Sloth As Possible

    前の記事で予告した通り、今度はNSRegularExpressionの話。 正規表現でマッチした部分文字列を取得する まずNSRegularExpressionオブジェクトを作って、それのメソッドにNSStringのオブジェクトを渡す、という形で使う。まぁ説明するよりコード見た方が早い。 NSString *string = @"「そんな正規表現で大丈夫か?」「大丈夫だ、問題ない」"; NSError *error = nil; NSRegularExpression *regexp = [NSRegularExpression regularExpressionWithPattern:@"「そんな(.+)で大丈夫か?」「(.+)」" options:0 error:&error]; if (error != nil) { NSLog(@"%@", error); } else { NST

    Objective-Cで正規表現を使う その2 : As Sloth As Possible
  • 正規表現で素数判定 - NO!と言えるようになりたい

    追記:ハッキリ言ってこの正規表現はネタなので,実際に素数判定を行いたい場合は,もっと別な賢いアルゴリズムを使ったほうが良いです 正規表現で素数が判定できるという記事を見たので試してみた. http://www.noulakaz.net/weblog/2007/03/18/a-regular-expression-to-check-for-prime-numbers/ この記事によると /^1?$|^(11+?)\1+$/ という正規表現を使うと,素数判定が出来るらしい.ある整数 n が素数かどうか判定したい場合は,"1" * nという文字列がこの正規表現にマッチするかどうかを調べればよく,マッチすれば非素数,マッチしなければ素数となる.ただし,"1" * n は,例えば,n が 4 ならば "1111" と 1 が 4 回連続して続く文字列となる. Rubyで書いた素数判定プログラムはこん

    正規表現で素数判定 - NO!と言えるようになりたい
  • 正規表現エンジンを作ろう (1)

    はじめに こんにちは。hirataraです。 私が初めて正規表現を使ったのは、PerlによるCGIでの文字列処理でした。それから私はPerlを使い続け、今では正規表現なしのコーディングは考えられないほど、正規表現を当たり前の機能として日常的に使っています。昔は標準では正規表現をサポートしていなかったJavaも、今では正規表現をサポートするようになりました。Javaだけではなく、今日ではほとんどの高級言語にとって、正規表現はなくてはならない機能であると言っても過言ではないほどメジャーな機能となっています。 記事では、この正規表現の舞台裏に光を当てます。一見すると作ることが難しそうな正規表現エンジンですが、その根底には数学的な概念があり、その概念さえ知っていれば基礎となる機能の実装はそんなに難しくありません。この連載ではその数学的な概念をPythonを使って表現しながら、実際に動作する正規表

    正規表現エンジンを作ろう (1)
    tetram
    tetram 2010/05/15
    正規表現の勉強に
  • 1