2008-02-07から1日間の記事一覧

1.15 文字列内の関数や式を展開する

関数呼び出しまたは式を文字列内で展開したい。そうすれば、単純なスカラ変数の展開だけでは作成できない複雑なテンプレートを作成できる。 # 式を個別の要素に分解してから連結 $answer = $var1 . func() . $var2; # スカラのみ # 卑怯な方法 $answer = "ST…

1.14 タイトルまたは見出しを適切にキャピタライズしたい

書籍、書類などにはタイトルや見出しがある。このタイトルおよび見出しに使用する文字列を適切にキャピタライズしたい。 INIT { our %nocap; for (qw( a an the and but or as at but by for from in into of off on onto per to with )) { $nocap{$_}++; } …

1.13 大文字/小文字の変換をする

大文字の文字列を小文字に、小文字の文字列を大文字に変換したい。 # 全体を変換 $big = uc($little); $little = lc($big); $bit = "\Ulittle" $little = "\L$big"; # 1文字のみ変換 $big = ucfirst($little); $little = lcfirst($big); $big = "\u$little";…

1.12 ユーザ入力した変数を展開する

次のような変数を含む文字列を読み込む。 You owe $debt to me. このとき、文字列内の$debtを格納されている値に置き換えたい。 # 変数が全てグローバル変数の場合は、シンボリックデリファレンスを使用して置換 $text =~ s/\$(\w+)/${$1}/g; # 変数にレキシ…

1.11 タブをスペースに、スペースをタブに変換する

文字列内のタブを適当な数のスペースに変換したい。または、その逆の操作をしたい。 # 冗長な置換パターン while ($string =~ s/\t+/' ' x (length($&) * 8 - length($') % 8 /e) { # 置換が失敗するまで空のループを回す } # Text::Tabsを使う方法 use Text…

ブログの手軽さ

今までブログってあんまし好きじゃなかった。と言うのも、昔、HTMLをほとんど手で作ってたので、そのときに、タグを挿入するのが凄い面倒で、そのイメージが残っていたので、好きになれなかった。でも、最近使い始めて、面倒なところは全て、サーバー側がや…

日の丸半導体株式会社

日本の主要な半導体メーカーは、ざっと6社ぐらいになるのかな。その6社が出資して、色んなコンソーシアムを作って、共同で研究・開発を行っています。半導体の微細化によって、開発費が(プロセスだけじゃなくって、設計もね)膨大に膨らむので、世界での競争…

今日はすんなり寝てくれた♪

昨日は、全然寝なくて寝なくて困ったけど、今日はすんなり寝てくれました。やっぱりお腹いっぱいになると安心して寝てくれるみたい。でも、問題はミルクを飲む量にバラつきがあること。飲むときは、200ccぐらい飲むけど、飲まないときはその半分。今は、昼夜…