タグ

perlと正規表現に関するtsuyossiiのブックマーク (11)

  • パターンマッチと文字列置換

    ○パターンマッチ ---------------------------------------------------- ▼条件式 文字列 =~ /正規表現で書かれたパターン/ $str="testhellotest"; if($str=~/hello/){ print "ふくまれています"; }else{ print "ふくまれていません"; } 処理結果 ふくまれています ■1文字だけのワイルドカードは . です $str="testhellotest"; if($str=~/h...o/){ print "ふくまれています"; }else{ print "ふくまれていません"; } 処理結果 ふくまれています ■複数文字のワイルドカードは * です $str="testhellotest"; if($str=~/h*o/){ print "ふくまれています"; }else{ pri

  • 正規表現サンプル集

    検索したい文字列 ※クリックで詳細説明に移動 正規表現 ※赤い字がメタ文字、グレーの「\」はエスケープのための「\」 bから始まってkで終わる3桁の文字列

  • パターンマッチ演算子の区切り文字を指定する

    パターンマッチ演算子を使ってパターンを記述する場合、「/パターン/」または省略せずに記述する場合は「m/パターン/」と記述します。この場合区切り文字として「/」を使用していますが、別の記号を区切り文字に使用することもできます。ここでは Perl の正規表現でパターンマッチ演算子を使用するときの区切り文字を指定する方法について解説します。 ※ パターンマッチ演算子の基的な使い方については「パターンマッチ演算子を使ったパターンの記述」を参照されてください。

    パターンマッチ演算子の区切り文字を指定する
  • 正規表現 - SMART 開発者のためのウェブマガジン

    正規表現の概要 正規表現は、Perlの中で最も重宝する機能のひとつです。正規表現にはテキスト処理のための様々な機能があり、文字列の中から特定のパターンを見つけ出したり、置換したりすることができます。 正規表現の基的な使用方法 たとえば、$strという変数に格納したデータの中から、「A」で始まって途中は何があるかわからないが最後が「E」という文字列を探したい場合、次のように記述することで、条件にマッチする文字列を見つけることができます。 $str =~ /A.*E/; 上記では、ドット( . )が改行以外の1文字を表し、アスタリスク( * )がその任意の文字の0回以上の繰り返しを意味します。このように、正規表現において特殊な働きを持った文字を正規表現演算子、またはメタ文字と呼びます。また、=~ はパターン結合演算子と呼ばれ、「左辺の値から右辺の値を検索する」という意味があります。 正規表現

    正規表現 - SMART 開発者のためのウェブマガジン
  • 正規表現サンプル集

    « 前 1 2 次 » 検索したい文字列 ※クリックで詳細説明に移動 正規表現 ※赤い字がメタ文字、グレーの「\」はエスケープのための「\」 JAPAN、NIPPONを日に置き換える

  • 第7章 正規表現

    正規表現とは、ある特定の文字列ではなく、文字列の一部をパターン化して表現する手法をいいます。 複数行ある文章の中から文字列を検索する時に、検索したい文字列すべてを指定するのではなく、文字列の任意の一部を置き換え可能な状態にして検索をする場合に正規表現を用います。 たとえば、UNIXやWindowsでは、文字列を検索するときに使用される正規表現として、「*」を任意の文字列(空き文字も含む)に、「?」を任意の1文字として使用することができます。パターンを、app* と表現すると、 apple application appeal などの文字列がマッチすることになります。 この正規表現の方法は、当然ながらプログラム言語ごとに異なりますが、Perlの場合は他の言語に比べて非常に強力な正規表現によるパターンマッチ機能を備えており、より詳細にかつ容易にパターンマッチを行うことができるとされています。

  • ★★★CGI-Perl 基礎編 (その八) 正規表現、マッチパターン、置換演算子、変換演算子 - SAK Streets

    CGI-Perl 基礎編 (その八) 正規表現、マッチパターン、置換演算子、変換演算子 ■正規表現 ・過去扱ってきた言語に正規表現などと言うものは存在しなかった。 上手く使うと非常に便利である。(パターンマッチ、パターンマッチング) 以下、簡単にまとめておく。 ■マッチパターン演算子 i 大文字、小文字の区別なし s 単一行として処理 (^、$ は、\n を無視) m 複数行として処理 (^、$ は、行先頭、行末尾) x 空白を無視、# をコメント処理 ■メタ文字 . 改行を除く任意の 1 文字 * 0 回以上のパターン繰り返し + 1 回以上のパターン繰り返し ? 0 または 1 回のパターン ^ 先頭から $ 末尾から \ メタ文字クォート | パターン論理和 () パターングループ [] 文字クラス {} 量指定子 \n 改行 文字クラスでも指定可 \r キャリッジリターン 文字クラ

  • Perl正規表現雑技

    このページは Perl5.6 を対象としています. perl スクリプトは EUC-JP で書かれることを想定しています. このページは 正規表現メーリングリスト を参考に,私が独自にメモとしてまとめたものです. このページの正規表現やスクリプトについての詳しい説明, わかりやすい説明はおそらくできません. このページに書かれているスクリプトは, 個人の責任において実行してください. このページに書かれているスクリプトの 利用・改造は自由 です. その際はどこかにこのページの URI( http://www.din.or.jp/~ohzaki/regex.htm )を参考として記述していただければ幸いです(任意). ご意見・ご感想・ご要望などは にお願いします.こう書いた方がいい, 動かん,わからん,バグってる,これ書け,などなどお待ちしています. このページへの リンクは自由 に張ってく

  • Perlメモ

    複数のプロセスでロック状態が異常であると判断し,そのうちの 1つがロックを解除したことにより,別のプロセスがロックしたにもか かわらず,先ほどロック状態が異常であると判断したプロセスによってこの正常なロッ クを解除されてしまう可能性があります. この方法の問題点は,異常なロック状態を解除する操作が正常なロック状態をも 解除できてしまうことにあります.逆に言えば,異常なロック状態を解除する操作に よって正常なロック状態を解除できなければ問題ないわけです.そのためにはどうす ればよいのか? 答えはロック状態が常に変化していけば よいということです.そして,これを実現するのに都合がよいのが rename による方法になります. 最初のスクリプトで説明しますと,ロックファイルが lockfile という 名前のときがロックが解除されている状態で,lockfile987654321 のよう に後ろに

  • Perlの正規表現をマスターしよう - Perl入門ゼミ

    Perl › 正規表現 Perlの正規表現の解説です。この記事を読めば、日常で利用する正規表現のすべてを短時間でマスターすることができます。正規表現を使えば、文字列の集合を表現することができ、正規表現にマッチする文字列を検索したり、置換したりすることができます。 正規表現を使って文字列の集合を表現できます。たとえば「a」「aa」「aaa」という三つの文字列を正規表現で表現してみましょう。連続する文字の個数を表現する正規表現「{}」を使って次のように書くことができます。 a{1,3} 「a」「aa」「aaa」という文字列の集合をひとつの正規表現「a{1,3}」で表しています。{}は量指定子と呼ばれるもので、連続した文字を表現することができます。 a aa -> a{1,3} aaa 正規表現の例をもう一つみてみましょう。「p1」「q1」「r1」という文字列の集合をひとつの正規表現「[pqr]

    Perlの正規表現をマスターしよう - Perl入門ゼミ
  • サルにもわかる正規表現入門

    1.正規表現とはなにか? 端的に言えば、「いくつかの文字列を一つの形式で表現するための表現方法」です。 では、なぜこの表現方法が有名なのかといえば、この表現方法を利用すれば、たくさんの文章の中から容易に見つけたい文字列を検索することができるためです。 この形式を使えば、以下のようなコギャルの会話にもついていけます(^_^) 「Windows ってあって…WINDOWSかもしんないしぃ、次にスペースが入ってるかもしんないしぃ、入ってないかもしんないし、後にやっぱ 98 が付くってゆーかー、もしかすると 95 が付いてもいいかなぁって感じでぇ…」 これ以上続けるとこちらがキレてしまいそうなのでこのあたりにしておきますが…これは、正規表現で書くと… W(indows|INDOWS) ?9[85] って感じで一行で書けちゃうっていうかぁ…あ、つい、口調が移ってしまった(^_^;)…書けるのでありま

  • 1