お薦め ページ


メニュー

ハワイ島 遊覧飛行ツアー

ハワイ島 B&B・ホテル

ハワイ島 不動産情報

ハワイ島 情報・観光ガイド

ブログ(Blog)

その他

関連サイト

: 個別エントリー・アーカイブ :

2006年10月11日

JavaScript で Right 関数

ちょっとした WSHスクリプト を JScript で書いていた際に、 文字列を右側から指定文字数だけ取り出す関数がほしくなった。

マイクロソフトの「JScript」のページ から、それらしいメソッドを探したのだが、 文字列内の、指定位置からの指定された長さを持つ部分を返す substr メソッド とか、 文字列内の指定された位置にある文字列を返す substring メソッド とかは あるのだが、 文字列を右側から指定文字数だけ取り出すメッソドは見つからなかった。

VBScriptであれば、 Right 関数 というのがあって、単にこれを呼べばよいのだが、JScriptには存在していないようだった。 で、しょうがないので作ったのが以下の関数。
//
// 文字列を右側から指定文字数だけ取り出す関数
//
function right( str, n ) {
    l = str.length;
    if (n>l) n=l;
    return( str.substring(l-n,l) );
}

strTest='ABCDEFG';
WScript.echo( strTest );
WScript.echo( right(strTest,3) );
もっとクールなソリューションがあるのかもしれないが、 とりあえず動いているのでよしとしよう。

それにしても、今回の状況を考えると、 WSHでスクリプトを書く際は、 素直に 「VBScript」を使った方が幸せなのかもしれないと感じた。

【参考リンク】

カテゴリー: プログラミング     2006年10月11日 22:14

トラックバック

このエントリーのトラックバックURL:
http://www.skymerica.com/blog/yotsumoto/mt/mt-tb.cgi/584


コメント

元の文字列STR、右から取り出したい桁数Xとすると
STR.substr(STR.length - X, X);
で行けるはずなので、上の関数だと
return (str.length - n , n);
でOKではないかな。

投稿者 eclipse : 2007年5月24日 20:07

コメントしてください




保存しますか?


 
ハワイ島での遊覧飛行ツアーとB&Bのスペシャリスト、スカイメリカ
Copyright © 2003,2009 Skymerica Corp. All rights reserved.