2008-01-01から1年間の記事一覧

日付の比較

簡単な比較。 % irb irb(main):001:0> require 'date' => true irb(main):002:0> from = Date::strptime('2008-01-01', '%Y-%m-%d') => #<Date: 4908933/2,0,2299161> irb(main):003:0> to = Date::strptime('2008-01-02', '%Y-%m-%d') => #<Date: 4908935/2,0,2299161> irb(main):004:0> sametime = Date::strptime</date:></date:>…

“ハッシュ”のキーと値を配列に変換して同時に取得する

忘れやすいので備忘録として記載。 サンプル hash = {"Lemon" => 100, "Orange" => 150, "Banana" => 250} p hash print("\n") puts "キーのみを取得" key_array = hash.keys p key_array print("\n") puts "値のみを取得" value_array = hash.values p valu…

Perl の安全なコーディングの約束

perl - 勝手に添削 - Perl入門#1@ITPro use strict;だけではなくuse warnings;も ビルトイン関数は()でくくらない 後置のifの条件も、()でくくらない ファイルの操作 パイプ readdir関数のイディオム まとめと参考文献の紹介

文字コードの変換を試してみる

#!/usr/bin/perl use strict; use warnings; use LWP::Simple; use Encode; my $url = 'http://www.excite.co.jp/'; my $filename = 'sample.html'; # WEB ページを取得する my $body = get($url); # 入力されるデータの文字コードを指定 $body = decode('sh…

Perl 5.8 での文字コードの取り扱い

perl - Encode 入門 perl - Encode 中級 perl/Encode - 7bit-jis != iso-2022-jp perl - no encoding; # whenever possible perl - use utf8; Perl 5.8.x Unicode関連

use utf8; とは?

utf8 ソースコード内に、UTF-8(か、UTF-EBCDIC)を有効/無効にするためのプラグマ Perl に script が UTF-8 で書かれているということを教える目的以外でこのプラグマをつかってはいけません。 本当に UTF-8 のソースコードを書こうとするのでないなら、 use …

LWP::Simple 練習

ファイルの文字コードは UTF-8 で作成している。 単純に WEB ページを保存する #!/usr/bin/perl use strict; use warnings; use LWP::Simple; use utf8; my $url = 'http://www.excite.co.jp/'; # WEB ページを保存する # 保存された WEB ページの文字コード…

FreeBSD 7.0 に zipruby をインストールできない

# gem install zipruby Building native extensions. This could take a while... ERROR: Error installing zipruby: ERROR: Failed to build gem native extension. /usr/local/bin/ruby18 extconf.rb install zipruby checking for zlib.h... yes checking…

ports から Plagger をインストールする

ports/textproc/p5-Plagger/ % su - Password: # whereis p5-Plagger p5-Plagger: /usr/ports/textproc/p5-Plagger # cd /usr/ports/textproc/p5-Plagger # make fetch-recursive # make install clean # plagger -v Plagger version 0.7.17

Windows に JRuby をインストールする

Java のインストールは必須なので、Java SDK の最新バージョンをインストールする。 JRuby の公式サイトから JRuby をダウンロードするWindows なら zip アーカイブが無難。 JRuby の圧縮ファイルを展開したら、適当なディレクトリに移動させる。今回は「C:\…

冗長的なコードを修正してみる

「1ページに 複数の id に UI Tabs を適用し、かつ Cookie でクリックしたタブを管理する」のコードは冗長なことはわかっていたので、修正をした。 <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js"></script> …

Ruby で月末日付を取得する

$ irb irb(main):001:0> require 'date' => true irb(main):002:0> day = Date.new(2008, 2, -1) => #<Date: 4909051/2,0,2299161> irb(main):005:0> p day.to_s "2008-02-29" => nil irb(main):006:0> p day.strftime("%D") "02/29/08" => nil irb(main):007:0> p day.strftime("%d") "</date:>…

実行中のスクリプトのディレクトリを取得する

p File.expand_path(File.dirname($0)) #=> 実行中のスクリプトのパス もしくは p File.expand_path(File.dirname(__FILE__)) #=> 実行中のスクリプトのパス $0 は実行時のスクリプトのファイル名組み込み変数 __FILE__ は実行時のスクリプトのファイル名変…

Ruby で zip 圧縮をする

必要なもの Rubygems zipruby zlib1.dll (Windows 版 Ruby を利用している場合) zipruby をインストールする # gem install zipruby zlib1.dll を入手する(Windows 版 Ruby のみ) 入手先 zlib Home Site の zlib compiled DLL をダウンロードする。zlib comp…

require がロードするファイルを探すパスに追加をする

$ ruby -I /the/path/you/wanna/add test.rb それか PATH に直接追加してしまうか。 $ export RUBYLIB=/the/path/you/wanna/add $ ruby test.rb もしくは、ruby スクリプト中で $LOAD_PATH.push('/path/to/dir') で追加できる。

Ruby で全角英数字を半角英数字に変換する

全角英数字だけではなく、半角カタカナなど文字種の揺れを修正したい。 Moji モジュールを利用してみる。 namespace gimite Ruby小物集 Moji モジュール サンプル Windows XP 上で実行。文字コードを変換しているのは、コマンドプロンプトに実行結果を表示さ…

1ページに 複数の id に UI Tabs を適用し、かつ Cookie でクリックしたタブを管理する

<script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js"></script> <script type="text/javascript" src="/js/jquery.ui.tabs.1.6rc2.min.js"></script> <…

UI Tabs で初期に選択されるタブを設定し、次回以降はクリックされたタブを選択表示させる

やりたいこと 初めて訪問したユーザーに初期設定で選択したタブを表示する 移動後にタブを表示するページに戻った場合は、最後にクリックしたタブを選択した状態で表示させる <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/jquery.ui.core.1.6rc2.min.js">

UI Tabs で選択したタブを Cookie に記録する

タブを選択してから別のページへ移動した後に、タブがあるページへ戻った場合に、選択したタブの内容が表示されているようにする。 もっとも簡単な記述方法 <script type="text/javascript" src="/js/jquery-1.2.6.min.js"></script> <script type="text/javascript" src="/js/jquery.cookie.js"></script> <script type="text/javascript" src="/js/ui.core.js"></script>

正規表現で置換をする

完全ではないけれども、メモ。 mysql> SELECT REPLACE(`file_name`, '.z', '.zip') FROM `datum_files` WHERE `file_name` REGEXP '\.z$';

MySQL で直近に生成された AUTO INCREMENT の値を取得する

参照 : LAST_INSERT_ID(), LAST_INSERT_ID(expr) 最も最近に実行された INSERT 文の結果として AUTO_INCREMENT カラムに正常にインサートされた、自動的に生成された 最初 の値を戻します。 例文では、 mysql> SELECT LAST_INSERT_ID(); -> 195 というのが掲…

複数ファイルから findstr で正規表現を検索し、ファイルに出力する

Windows で grep を使いたいと検索していたところ、Command.exe に findstr というコマンドがあることを知る。 findstrで正規表現を検索する 要約 find コマンドでは固定的な文字列検索機能しか利用できない。 findstr コマンドを利用すると、正規表現を使っ…

screen を起動した時に delete キーがうまく働かない

普通は delete キーが backspace になっているが、screen 上では「~」になっていた(ビープ音を伴う)。 まず C-v delete を打って何が表示されるか確認する(Ctrl キー + v キーを押した後に delete キーを押す)。 screen を起動していないときは「^?」だが…

インストール直後にすること 1

apt の設定ファイルから、参照先の CD-ROM を外す $ su - Password: # less /etc/apt/sources.list # # deb cdrom:[Debian GNU/Linux 4.0 r4a _Etch_ - Official i386 NETINST Binary-1 20 080804-15:10]/ etch contrib main deb cdrom:[Debian GNU/Linux 4.…

FreeBSD 7.0 で MySQL を起動する

# /usr/local/etc/rc.d/mysql-server start <- MySQL を起動する # /usr/local/etc/rc.d/mysql-server restart <- MySQL を再起動する # /usr/local/etc/rc.d/mysql-server stop <- MySQL を停止する

FreeBSD 7.0 で MySQL の設定ファイルがあるディレクトリについて

# ls -l /usr/local/share/mysql/ | grep my-\* | grep -v grep -r--r--r-- 1 root wheel 4800 Sep 2 08:39 my-huge.cnf -r--r--r-- 1 root wheel 20703 Sep 2 08:39 my-innodb-heavy-4G.cnf -r--r--r-- 1 root wheel 4777 Sep 2 08:39 my-large.cnf -r--r--…

FreeBSD 7.0 で MySQL の起動スクリプトを記述する

# vi /etc/rc.conf mysql_enable="YES" <- 記述する mysql_bddir="/usr/local/mysql" <- MySQL のデータ保存場所を初期設定以外にしたい場合は指定する。 MySQLサーバ(データベース)のインストールと設定

マルチバイトの全角半角変換について

最初は下記の内容で、全角半角を変換しようと思ったが、失敗した。 require 'kconv' str = 'abcあいうえお' str = str.tr('a-zA-Z', 'a-zA-Z') print str.tosjis しかし、結果は文字化けしてしまう。 下記のサイトを参考にしたおかげで、変換できた。 $K…

FreeBSD 7.0 で ports からインストールした Apache でエラーが発生する

起動時に、下記のエラーが発生する # /usr/local/etc/rc.d/apache2 start Performing sanity check on apache22 configuration: Syntax OK Starting apache22. # tail /var/log/httpd-error.log [alert] (EAI 8)hostname nor servname provided, or not know…

hostname を変更する

hostname を表示する # hostname freebsd.example.com -s のオプションをつけると # hostname -s freebsd と名前からドメイン名を取り除いて表示する。 hostname を変更する # hostname freebsd7.example.com # hostname freebsd7.example.com # hostname -s…