タグ

perlに関するshuuuuunyのブックマーク (8)

  • 正規表現の先読み・後読みを極める! - あらびき日記

    この記事は abicky.net の 正規表現の先読み・後読みを極める! に移行しました

    正規表現の先読み・後読みを極める! - あらびき日記
  • 正規表現メモ

    \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

  • 第7章 正規表現

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

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

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

    正規表現 - SMART 開発者のためのウェブマガジン
  • Perlワンライナー&マルチライナー集

    perl_oneliner_example PBV�_U P� �_U Perl ワンライナーサンプル集 ■概要 障害解析のためのログの調査、非互換対応でのソースコードの調査といった テキスト処理で使った Perl ワンライナーのサンプル集です。 Perl ワンライナーは以下の点が良いと思います。 ・PerlOracle Database (10g以降) に同梱されている。 従って、Windows プラットフォームでも使える。 ・awk、sed、grep の正規表現の書き方などをそれぞれ覚えれない。 awk、sed、grep でできることはだいたい Perl でできるので、 Perl に絞ると覚えることを減らせる。 ・最小限の労力で最大限の仕事ができる。 ちょっとしたプログラムを書くような処理でも Perl ワンライナーを 使うとたった1行で済むことがあります。 ■Perlワンライナ

    Perlワンライナー&マルチライナー集
  • perl のコマンドラインオプション

    参考ページ [[http://debugitos.main.jp/index.php?Perl/コマンドライン]] 基的なオプション -e ワンライナーを書くために必須。 複数並べられるので、それなりに色々書ける 直後にperlプログラムを書ける。 perl -e 'print 11/2' -l[8進数] 行末に指定された8進数に変える。-l のみの場合、改行になる。 perl -e 'print 22' #=> 22 perl -l -e 'print 22' #=> 22perl -l101 -e 'print 22' #=> 22A -0[digits] -l の入力セパレータバージョン -00 とすれば、空行を区切り -777 とすればファイルごとの区切りになる。 使い勝手の良いオプション -n while (<>) { ...} の中にスクリプトを入れたと思って実行 -p -n

  • Perlのワンライナーとコマンドラインオプション - weblog of key_amb

    コマンドラインオプション オプション 意味 -e 文字列をスクリプトとして実行 -l 強制改行 -M{モジュール名} モジュールをuseする -MO=Deparse コマンドライン実行時にスクリプトに変換する -n 1行ずつ処理 -p 出力 -i 出力先を入力ファイル自身にする 以上を踏まえて、以下によく使う使い方を書く。 1行ずつ処理 # 行番号を表示 perl -nle 'print "$.:$_"' hoge.txt # スペース区切りで4番目と最後の要素を抜き出す perl -nle '@a = split(/\s+/, $_); print "$a[3]\t$a[-1]"' hoge.txt 置換 比較的よく使います。 # "foo"を"bar"に置換 perl -pi -e 's/foo/bar/g' foo.txt # バックアップを同時に作成 perl -pi'*.back

    Perlのワンライナーとコマンドラインオプション - weblog of key_amb
  • とほほのperl入門 ◆ 正規表現

    ラリー・ウォール氏によって1987年に開発されたスクリプト言語です。 C言語、AWK、sed, sh などの影響を受けて開発され、PHP, Ruby, Python などに影響を与えました。 聖書の中の「高度な真珠」にちなんで pearl と名付けられる予定でしたが、同盟の言語がすでに存在したため Perl と名づけられました。 現在では Perl は "Practical Extraction and Report Language" の略とされています。 プログラミング言語を示すときは先頭大文字で「Perl」、処理系を表すときは先頭小文字で「perl」と表します。 2023年9月現在、5.38 が最新版です。 RHEL7系では 5.16、RHEL8系では 5.26、RHEL9系では 5.32、Ubuntu 22.04では 5.34 がインストールされます。 Windows用の実装として

  • 1