タグ

2009年4月1日のブックマーク (3件)

  • Perl内部文字列をバイト数でカットしてみる - 徒書

    以前に、UTF-8文字列をバイト数でカットした時の末尾の処理というのを考えたのですが、この記事はUTF-8文字列をPerlの内部コードとしてではなく、単なるバイト列として扱っていたものでした。しかしUnicodeを内部文字列としてサポートしたPerlのことを考えると、将来的にはあまりよろしくない方法のように思えてきました(今更ではありますが)。 実際、文字列をPerlの内部文字列(utf8フラグの付いた文字列)として扱うと、lengthやsubstr等の関数や正規表現などでもバイト単位でなく文字単位で操作することができて便利です。ただ出力する際に文字数ではなくデータ長(バイト単位)で制限したいこともあるので、内部文字列として扱いつつバイト数でカットする方法はないかと考えてみました。 で、色々試してみて、そのようなサブルーチンを比較的短く書くことができました。 use strict; use

    acotie
    acotie 2009/04/01
  • perlで文字列のビット演算をする際、 どういった変換がなされているのか教えてください。…

    perlで文字列のビット演算をする際、 どういった変換がなされているのか教えてください。 例 : "50" & "4" = 4 ここでは"50"と"4"は何に変換され、 最終的に4という答えにいたるのでしょうか。 初歩的なことで申し訳ないですが、 よろしくお願いします。

  • ファイルの中身を暗号化する:ITpro

    今回はファイルの暗号化に挑戦です。個人情報保護が声高に叫ばれるご時勢です。ファイル内容を秘密にしておきたいというニーズも,そこはかとなく静かなブームになってます。今回のサンプルはそんなニーズにお応えすべく,ファイルの中身を意味不明の内容に暗号化してしまいます。 今回のサンプルも前回同様にPHPPHP:Hypertext Preprocessor)を使用します。バージョンは4.xでも5.xでもかまいません。Windowsにデフォルト設定でインストールされているもの(C:\PHPにインストール済)としてお話を進めさせてください。 暗号化にはいくつかの方法があります。単純なものでは「aを1にする。bをXにする」のように対応表を使った置換暗号ですね。ただこの方法は英数程度ならともかく,漢字を含めると膨大な数になる日語文章では非現実的な作業になります。簡単な方法なら「URLエンコード」という方法

    ファイルの中身を暗号化する:ITpro
    acotie
    acotie 2009/04/01