Perl › 演算子 › here Perlの論理演算子には次のものがあります。 演算子 意味 || 論理和 && 論理積 ! 否定 or 論理和(&&より優先順位が低い) and 論理積&&より優先順位が低い) not 否定(!より優先優位が低い) && 論理積(A かつ B) 「AかつB」という論理積を表すには&&を使用します。 # 1より大きい、かつ4より小さい if ($num > 1 && $num < 4) { ... } || 論理和(A または B) 「AまたはB」という論理積を表すには||を使用します。少なくともどちらかひとつの値が真の場合に、真になります。 # 'dog'または'cat' if ($pet eq 'dog' || $pet eq 'cat') { print "\$pet は、'dog' あるいは、'cat' のどちらかである。\n\n"; } ! 否定
そろそろXSをちゃんとやろうと思ったので、メモリ周辺のことが良くわからなくて放置していたsv_2mortal()やhv_store()のことについて調べた。 参考: perlguts http://www.kt.rim.or.jp/~kbk/perl5.005/perlguts.html 最初に結論を書いてしまうと [1: sv_2mortal()] - returnしない変数は常にsv_2mortal()を通す (揮発性をもたせる) - SVはreturnするときはsv_2mortal()を通してはダメ - AV, HVはreturnするときもsv_2mortal()を通す [2: newRV_inc()] - リファレンス変数(RV)を作るときはnewRV_inc()を 使い参照カウントをインクリメントしておく (newRV_noinc()はダメ) - リファレンス変数もsv_2mor
かつては、Perlは、別にインストールしな ければ、ならない場合もありましたが、い まや大抵のUNIX機(Soralis含む)に 標準で実装されているので、シェルから簡 単に使用することができます。AWKに関し ては、とても古いScriptなのでUNIX機 どころか、Windows機でもGNU版を配置 するだけで手軽に使用できます。 PerlにしてもGNU版やActivePerlなどの Windows専用Perlが出現していますから 困ることはありません。AWKは、ファイ ルを整形したり、シェルからちょっと したScript生成とかに使われることが 多い。Perlは、かつてのCGI創世期には 、さかんに使用されていましたが、 その座は、Javaに譲りました。 では、Perlの役目は終了したのかとい えば、そうでもありません。AWKでは 出来ないバイナリを扱うことが可能な ので、ある意味「な
例えば、以下のようなファイル処理の場合 (1)入力ファイルの0バイトから10バイト をそのまま出力。 (2)出力ファイルの11バイト目から "ABCDEF"を固定出力。 (3)入力ファイルの20バイトから10バイト を出力ファイルの17バイト目から出力。 このような単純仕様は、以下のような PerlScriptとなるが、この程度の単純 Scriptは、シェル内に直記述するほうが オープンで保守しやすい。 Scriptファイルにしてしまうと必ず、 その保守の問題が発生するのでシェルの 保守と一体化するほうが明示的といえる。 しかし1行が長くなりすぎるような Scriptになるとシェルそのものの保守の 問題になりかねないので、その匙かげん を見極める必要がありそうです。 ------------------------------------- #!/usr/bin/perl while(<>
「文字列処理の基礎」の記事を完全にリライトしました。 文字列処理の基礎 文字列処理の基礎について網羅的に書いたので、これひとつで文字列処理の基礎がひととおりマスターできます。 よく使う機能について書き揃えました。 文字列の基礎 文字列の作り方 ダブルクォートで囲った場合 エスケープシーケンス 変数展開 文字列の連結 文字列の出力 文字列処理の小技 文字列リスト演算子 改行を取り除く 指定した文字で配列の要素を連結する 指定した文字で文字列を分割する 文字列の長さを取得する 文字列の書式指定 ヒアドキュメント ダブルクォートあるいはシングルクォートで囲った文字列と同じ意味にする 正規表現 パターンマッチを使って検索を行う 置換を行う Perlで正しく日本語を扱う ソースコードはUTF-8で記述し、utf8プラグマを指定する。 外部から受け取った文字列は必ずデコードする 外部へ出力する文字列は
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く