MARCO's FREE MEMO

携帯フォトや備忘録などをちょこっと…

SimpleDateFormat

2005年05月31日 17時50分28秒 | JSP(Java)
データに登録日時を埋め込むための日付と時刻の取得

Date tdy = new Date();
SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd HHmmss");
Sting stamp = fmt.format(tdy);

時刻のHHは24時表示、hhだと12時表示になる

月末だなあ。
プログラムを今月中にあと1本って・・・あ、無理かも(涙)

正規表現メモ

2005年05月25日 12時14分08秒 | perl
perlでは結構必要なのにあまり知らない正規表現(笑)←笑っていいのか

■文字列の置換書式
s/置き換え前の文字列/置き換え後の文字列/指定

「.」は任意の一文字
「*」は直前の文字が0回以上ある場合にマッチ
「$&」は置き換え前の文字列

$_=~ s/<.*>/$&\n/g;
とすると'<'と'>'に囲まれた文字が対象となり、対象文字列の後に「\n」が付加される。

正規表現を駆使するとそれだけでプログラミングっぽい処理ができそうなんだけどなあ。
unixでエディタを使う人は必須かな?

おとといも昨日もすごい雨が降った。今日は降らないでください!

substringの使い方

2005年05月17日 14時39分23秒 | JSP(Java)
文字列を分けるsubstringは通常2つの引数を持つ。

String temp = "ABCDEFG";
out.print(temp.substring(3,5));
// [DE]と表示される
第一引数は開始位置、第二引数は終了位置という意味だ。

ここで引数を1つにすると、開始位置以後の文字列が取得できる。

out.print(temp.substring(3));
// [DEFG]と表示される

文字列変数の頭にフラグやコードを置いて、残りの長さが不定の場合に便利。

午後の紅茶ROYALがちょっとお気に入りの今日この頃(^-^)
日曜日に見たテレビ番組の影響でかりんとうが食べたい今日この頃でもある。


数値のフォーマット

2005年05月12日 13時19分54秒 | JSP(Java)
ゼロサプレスせずに桁数を揃えて表示させる方法。

NumberFormat nf = NumberFormat.getInstance();
nf.setMinimumIntegerDigits(5);
nf.setGroupingUsed(false);
for(int i = 2001;i <= 2010;i++){
out.print(nf.format(i)+"年";
}

たぶん良く使うと思う。。。

年月をプルダウンにする

2005年05月09日 16時17分05秒 | JSP(Java)
年月計算のサンプルとして今月から過去12ヶ月をプルダウンにする方法

Calendar cal = Calendar.getInstance();
cal.set(ty,tm,1); //ty,tmは今日の年月
SimpleDateFormat fmt = new SimpleDateFormat("yyyyMM");
out.print("<select name=nengetsu>");
out.print("<option value=#>年月を選択</option>");
for(int i = 0;i <12;i++){ String wyymm = fmt.format(cal.getTime());
out.print("<option value="+wyymm+">");
out.print(wyymm.substring(0,4)+"年"+wyymm.substring(4,6)+"月度</option>");
cal.setTime(dt);
cal.add(Calendar.MONTH,-1);
}
out.print("</select>");

ちょっと面倒だけどパターン化しておけば後で役に立つよ♪


複数のパラメータの取得

2005年05月07日 16時54分03秒 | perl
?の後に記述した複数のパラメータを取得する方法

$buf=$ENV{'QUERY_STRING'};
@pairs=split(/&/,$buf);
foreach $pair (@pairs) {
($name,$value)=split(/=/,$pair);
$value=~ tr/+/ /;
$value=~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$PARAM{$name}=$value;
}

例えば「test.cgi?YY=2005&MM=5&DD=7」とした場合にプログラムでは
PARAM{"YY"}=2005;
PARAM{"MM"}=5;
PARAM{"DD"}=7;
という連想配列に値が格納されることになる。

パラメータ渡しでWEBアプリを作る場合には必須だな。

今日はDVD「めだか」を借りてきた。実は第2話だけ見逃していたのだった。やれやれやっと見れた(笑)