タグ

Perlに関するyasufのブックマーク (71)

  • Perl XMLでencoding='Shift_JIS'や'euc-jp'を使う

    by Hippo2000(2000/7/12) Perlを使って日語の入ったXMLファイルを処理しようとするさい、これまではencodingをどうするかというのが1つの悩みでした。 私は好きなマッピング・ファイルを"Shift_JIS"、"euc-jp"などのためのマッピング・ファイルにするためのスクリプトmkenc.plを作成しました。 何はともあれという形で公開します。ご意見などありましたらメールをいただきたいと思います。 目次 1. はじめに 2. ファイルとその内容 3. 使い方 1. 背景 村田真さんの"Japanese_Encoding.msg"にもあるように、現バージョンのXML::ParserとXML::Encodingには"Shift_JIS"や"euc-jp"という文字セットためのマッピング・ファイルは入っていません。 このために、XML::Parserを利用す

    yasuf
    yasuf 2011/10/28
  • Site Cooler NZ | Points to Note When Shopping for a Washing Machine

    Points to Note When Shopping for a Washing Machine There are different washing machines brands in New Zealand. When shopping, therefore, you need to ensure that first, you get a quality machine; a machine that will last through many years without breaking down. You check product warranties and reviews when shopping to ensure a machine is a good quality. The material of the drum can be enamel, plas

    yasuf
    yasuf 2011/10/28
  • サブルーチン - 2部 Perl言語仕様 - [SMART]

    サブルーチンの基的な使い方 プログラム内で何回も同じ処理をするようなときは、その処理の部分を切り離してサブルーチンにしてしまうのがスマートなやり方です。そうすれば、何回も同じソースを書く必要がなくなるので、時間の節約にもなります。 サブルーチンの宣言 サブルーチンは sub で宣言します。 sub func;    # サブルーチンの宣言 サブルーチンを宣言し、なおかつ定義するには次のようにします。サブルーチンの宣言と定義を同時に行うのが一般的です。 # サブルーチンの宣言と定義 sub func{ .... } サブルーチンを呼び出すには、アンパサンド( & ) をサブルーチン名の前につけて、以下のようにします。 &func(); サブルーチンはファイルのどの場所で宣言してもかまいませんし、呼び出し元と同じファイル内でなくても問題ありません。別ファイルにあるサブルーチンは、do、 re

    サブルーチン - 2部 Perl言語仕様 - [SMART]
    yasuf
    yasuf 2011/10/28
    引数の与え方について
  • Perlオブジェクト指向プログラミング

    -> 趣旨と注意書き -> 身近なpackage -> なんのためのpackage ? -> What's `new' ? -> bless ( reference => package ) -> Hello, Module World! -> オブジェクト? -> main パッケージと関連付けてみる -> クラスとメソッド -> オブジェクト指向 -> オブジェクトがリファレンスなら… -> -> を連続する -> 継承 -> 多重継承 -> 多重継承をやめる -> 多重継承をやめる(もう少し簡単に) -> 情報源(書籍等) <- モドル 趣旨と注意書き これを読んでも、あんまりきちっとした知識は、身に付きません(^^; オブジェクト指向の概念はほんの少ししか説明しません。ここで述べるのは、Perlでどうやるかってのが主です(それも不十分&嘘まじりかも)。 とりあえず、モジュールを作り

  • Perl モジュール XML::Simple の使い方

    Perl のモジュール XML::Simple の使い方を解説します。 XML::Simple は名前の通りかなり簡単に使用できますが、オプションが複雑なのと、扱うXMLの個々のデータによってはエラーを吐くことなく実行が終了してしまうこともありますので、その際の留意点などをご紹介します。 なお、このページで紹介するのは、読み込み時( XMLin )の場合のオプションと使用方法のみです。 XMLout での書き出しが余り実用的でないという解説は、下記ページをご覧下さい。 「Perl で日語 XMLを扱う」 <company></company> などのタグで囲まれた部分を 「エレメント」、<company id=”1234″>の「id=”1234″」の部分を「アトリビュート」と記載します。 「要素」「属性」はそれぞれ一般的な意味で使用しています。 ある程度 Perl の知識があり、XMLの

    Perl モジュール XML::Simple の使い方
    yasuf
    yasuf 2011/10/28
  • 【perlメモ】CSVファイルを簡単に処理できるCPANモジュールText::CSV_XS

    text::CSV_XS[http://cpan.uwinnipeg.ca/search?query=text%3A%3ACSV_XS&mode=dist] Text::CSV_XS CSVファイルはエクセルなんかでよく使われる形式のテキストファイルですが、基「,」(カンマ)区切りのテキストファイルです。単純な「,」(カンマ)区切りのファイルだといいのですが、実際にはデータ自体に「,」や「"」を含んでいたりすることもありそういうのを考慮すると実際に自前で処理しようとすると結構大変です。そういう場合に便利なのが「Text::CSV_XS」CPANモジュールです。 下のようなShift JISのCSVファイルがあるとき text.csv #!/usr/bin/perl use strict; use warnings; use utf8; use Encode; use Text::CSV_

    【perlメモ】CSVファイルを簡単に処理できるCPANモジュールText::CSV_XS
    yasuf
    yasuf 2011/10/18
  • Text::CSV::Encoded - 日本語を含んだCSVファイルを扱う - Perl入門ゼミ

    Perl › モジュール › Text::CSV::Encoded 日語を含んだCSVファイルを扱うにはText::CSV::Encodedモジュールを使用します。以下にCSVを処理するサンプルを示します。スクリプトはUTF-8で保存します。 use strict; use warnings; use utf8; use Text::CSV::Encoded; my $file = shift; my $encoding = 'UTF-8'; my $csv = Text::CSV::Encoded->new({ encoding_in => $encoding, encoding_out => $encoding }); open my $fh, "<", $file or die "Can't open $file: $!"; while (my $fields = $csv->ge

    Text::CSV::Encoded - 日本語を含んだCSVファイルを扱う - Perl入門ゼミ
    yasuf
    yasuf 2011/10/18
  • cpan - [SMART]

    CONTACT WITH RHYTHMFACTORY リズムファクトリーはホームページの制作会社です。 ホームページ制作に関するご要望・ご相談はこちらからどうぞ。

    cpan - [SMART]
    yasuf
    yasuf 2011/10/18
  • とほほのperl入門

    とほほのperl入門 トップ > とほほのperl入門 概要編 perlとは 特徴 perlのバージョン 入手方法 実行方法 引数指定 ファイル指定 自己完結型 標準入力読み込み型 基礎知識 簡単な実行例 これだけは覚えて 定数・変数・値 数値 文字列 エスケープシーケンス(\) スカラー変数($XXX) 配列(@XXX) 連想配列(%XXX) 変数名に使える文字 数値と文字列 真(true)と偽(false) 定義済みと未定義 省略時の変数($_) 環境変数($ENV{'XXX'}) コマンド引数($ARGV) シグナル($SIG{'XXX'}) その他の特殊変数($X) バイナリデータ 演算子 代入 算術演算子 ビット演算子 数値比較演算子 文字列比較演算子 条件演算子 マッチング 文字列連結 文字列置換 繰り返し演算子 範囲演算子 ファイル検査 制御構文 if elsif else文

    yasuf
    yasuf 2011/10/13
  • とほほのperl入門(利用例編) - とほほのWWW入門

    $str = "ABCDEFG"; for ($i = 0; $i < length($str); $i++) { $c = substr($str, $i, 1); print "[$c] "; } $str = "ABCDEFGあいうえお"; # 漢字コードはEUCとする for ($i = 0; $i < length($str); $i++) { $c = substr($str, $i, 1); if ($c =~ /[\x80-\xff]/) { $c = substr($str, $i++, 2); } print "[$c] "; }

    yasuf
    yasuf 2011/10/13
    文字処理 1文字ずつ処理する
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    yasuf
    yasuf 2011/10/13
    length($param)
  • 数値と誤差 - Perl入門ゼミ

    Perl › 数値 › 誤差 小数をコンピュータで表現するには誤差が問題になります。2進数で表現できない小数は誤差が発生します。 コンピュータは数値を内部的には2進数としてしか表現できません。整数についてはどんな数でも2進数として表現できます。 問題になるのは小数です。2進数で表現できる少数は、0.5, 0.25, 0.125, 0.0625 ( 順に、1/2, 1/4, 1/8, 1/16 ) などの1/2のn乗で表現される数と、これらの和で表現される数( たとえば 0.75 )だけです。 0.3 というのはいくら2を乗算しても整数になりませんから、2進数で正確に表現することができません。コンピュータはこのような数を近似することによって何とか扱います。0.3は、2進数を使って以下のように近似されます。 0.3  = 1/4 + 1/32 + 1/64 + 1/512 = 0.25 + 0

    数値と誤差 - Perl入門ゼミ
  • my と local どう違う?

    ここでは、変数の局所化に使う my と local について解説します。 どちらも変数を局所化することには違いないのですが、細かな点で違いがあります。 この違いを理解していないと想定しない結果となってしまいます。 しっかりと押さえておきたいポイントです。 目次 局所化とは そもそも局所化とは何かを理解しなければいけません(ご理解されている方は飛ばしてください。)。 数十ステップ、数百ステップ程度のスクリプトの場合には、全体を把握しながら作成できるため、あまり気にしませんが、 数千ステップ以上のスクリプトともなると、自分でスクリプトを書いていても、どこにどんな変数名を使ったかを忘れてしまいがちです。 Perl の場合、宣言しなくても、いきなり変数を使うことができるため、そのようになりがちです。 そこで、ある範囲だけに有効な変数として定義することで、他の範囲には影響しないようにすることができま

  • ITmedia エンタープライズ:第1回 何はなくともCPANを知ろう (1/2)

    最近のWebかいわいでは、Webアプリケーション同士が連携してどんどん面白いサービスが生まれています。しかし、Web上のサービスは手元にソフトウェアも何も残らないので、どうしても雲をつかむような分かりにくさがあります。そこで連載では、Webサービスを実際に利用/作成しながら、そういった「今どき」のテクノロジーを学んでみたいと思います。 今どきのWebプログラミング、教えます この連載では今どきのWebプログラミングを解説していきます。Webプログラミングというと一見難しそうに思えますが、ライブラリが豊富な最近のスクリプト言語を使えば、かなり簡単に高機能なWebサービスが実現できます。稿では、特にライブラリが充実しているPerlを使うので、各種Webサービスの開発も「実は結構手軽で簡単なもんだ」と理解していただけるかと思います。 今回から数回はその足がかりとして、Perlのライブラリ群C

    ITmedia エンタープライズ:第1回 何はなくともCPANを知ろう (1/2)
  • ファイルハンドルと出力 - 2部 Perl言語仕様 - [SMART]

    ファイルテスト演算子の使い方 $file = "/home/httpd/html/index.html"; # ファイルが存在するか確認 if ( -e $file ){ .... } パイプ UNIX 系 OS 全般や、Windows NT といったサーバ OSには、パイプが用意されています。パイプは、プロセス間で通信するために用意された機構で、標準出力と標準入力を経由してデータを受け渡しするためのものです。これによって、一時ファイルなどを経由せずに、ダイレクトにプログラムが標準出力に出力した結果を他のプログラムの標準入力に渡すことができます。 open でパイプ処理 以下では Perl からパイプを使った例を紹介します。ファイル名の先頭に | を付けると、そのファイル名をコマンドとして解釈し、そのコマンドラインへ出力します。 sendmail を使ってメールを送信する例です。 open

    ファイルハンドルと出力 - 2部 Perl言語仕様 - [SMART]
  • 第7章 正規表現

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

    yasuf
    yasuf 2011/06/30
  • Perl講座[入門からデータベース連携なども]

    Points to Note When Shopping for a Washing Machine There are different washing machines brands in New Zealand. When shopping, therefore, you need to ensure that first, you get a quality machine; a machine that will last through many years without breaking down. You check product warranties and reviews when shopping to ensure a machine is a good quality. The material of the drum can be enamel, plas

  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
    yasuf
    yasuf 2011/02/14
  • The Perl5 Manual - Table of Contents

    Edition 0.1 for Perl Version 5.00 Dec 1998 Copying 概要 環境変数 ファイル 診断 バグ 注釈 データ構造 変数名 コンテキスト スカラ値 スカラ値の構成 リスト値の構成 構文 単純実行文 複合実行文 演算子と優先順位 優先順位 項とリスト演算子 (左方向) アロー演算子 インクリメントとデクリメント 指数演算子 単項演算子 拘束演算子 乗法演算子 加法演算子 シフト演算子 名前付き単項演算子 比較演算子 等価演算子 ビットごとの AND ビットごとの OR と XOR C スタイルの論理積 C スタイルの論理和 範囲演算子 条件演算子 代入演算子 コンマ演算子 リスト演算子 (右方向) 論理否定 論理積 論理和と排他論理和 Perl にない C の演算子 クォートとクォートのような演算子 I/O 演算子 定数の畳み込み 整数演算 正規表現

    yasuf
    yasuf 2011/01/10
  • Mac OSXでPerlの環境を整える | Heart Beat

    *2010/08/12追記 まずはMacportsのインストール PerlのインストールにもMacportsを使うと/opt/local以下にインストールしてくれるのでオススメします。 MacのデフォルトのPerlのインストールディレクトリを汚さないですし、アンインストールやアップグレードなどのバージョン管理もできるパッケージ管理ツールです。 MacPortsとは? MacPorts(旧名DarwinPorts)というのはパッケージ管理ツールで、UNIX向けのオープンソースソフトウェアをダウンロード、configure、make、インストール、そのパッケージ使用するのに必要な他のパッケージも一緒にインストールなど面倒な作業をすべて代わりにやってくれる便利なソフト。 source: Macports – Macの手書き説明書 事前にXcodeTools、X11をMacに付属しているインストー

    yasuf
    yasuf 2011/01/10