指定文字でパディングするJavaScript

  • 投稿日:
  • by
  • カテゴリ:

 

// 左側を指定文字でパディング

var strpad = function(str, len, pad, right){

    if(typeof pad == "undefined" || pad.length == 0){ pad = " "; }

    var padding = "";

    if(len){

        for(var i = 0; i < len; i++){ padding += pad; }

    }

    str = new String(str);

    if(len){

        if(right){

            str = str + padding;

            str = str.substr(0, len);

        }else{

            str = padding + str;

            str = str.substr(str.length - len, len);

        }

    }

    if(pad == " ") str = str.replace(/ /g, "&nbsp;");

    return str;

// 右側を指定文字でパディング

var strpadright = function(str, len, pad){return strpad(str, len, pad, true)}

// 左側を"0"パディング

var strzeropad = function(str, len){return strpad(str, len, "0");}

// 右側を"0"パディング

var strpadzero = function(str, len){return strpad(str, len, "0", true);}

 

// 使用例

strpad("aa", 5, "x")

=> "xxxaa"

strpad("aa", 5, "x")

=> "xxxaa"

strpadright("aa", 5, "x")

=> "aaxxx"

strzeropad("aa", 5, "x")

=> "000aa"

strpadzero("aa", 5, "x")

=> "aa000"