Ruby

XMLのDOMツリーから余分な空白を削除する(追記:実際は圧縮)

REXML Tutorial - Homeにあったので、試してみた。(CentOS5.2のRuby 1.8.5のパッケージ付属のrexml) require 'rexml/document' include REXML doc = REXML::Document.new( $stdin, { :compress_whitespace => :all}) doc.write これで、行頭とかに空白を含む…

素朴な疑問、$0を書き換えてApacheが処理してるURLを可視化するテクについて

いろいろ調べて個人的には勉強になったけど、あまりに雑多なメモなので、大抵の人には参考にならないと思います。

条件演算子とchomp!に関するメモ

Rubyドキュメント Stringクラスより chomp([rs]) chomp!([rs]) 文字列の末尾から rs で指定する行区切りを取り除きます。 rsのデフォルト値は変数$/の値です。 rs に nil を指定した場合、このメソッドは何もしません。 rsが空文字列(パラグラフモード)の場…

getsがechoするようになった(readlineと同じような動作)のはいつからだろう?(追記:誤解でした。常にgetsはechoしていたようです)

あるプログラムで、パスワードを入力させようとしていて、ふと気づいたのだが、Ruby(1.8.x)でgetsを使うと、入力がecho backされてしまうので、かなり気持ち悪い。 すげー誤解している可能性も高いのだが、昔はそうじゃなかった気がする。でも今のRuby1.8.x…

数独はSATに限る、わけではないようだけれど

充足可能問題を解くsolverのminisatを利用して、数理パズルの一種である数独を解いてみようというtutorialを見つけた。なるほど。 論理式の乗法標準形というのを見て、たまたま今図書館から借りてきて眺めているゲーム作成本に出ていた、マップチップを思い…

今日の馬鹿すぎ

File.foreach(filename, "r") {|line| p line } とかやって、「どーも行の途中で切れちゃうなあ」とかやっていた。 foreachの第2引数はセパレータだってば>自分。IO.open と混同してる。 普通は指定しなくていいんだよ>自分 File.foreach(filename) {|line…

RubyKaigiの速報ログなどをつらつら読んで、Ruby標準化について思う

Matzや、現在の関係者の多くは、標準化なんて「しぇえからしか!」という気分があるかもしれないが、自分なんかは、どうも「仕事で使えないなんてもったいない」という気持ちである。 特に、Rubyの実装がいくつか出てきている現在、システムを変えたら、古い…