wedata

Database: UStoreScriptFunction9

Item Details: 共通関数

spec_version 1
content /** * 文字列から最初の数文字以降を抽出する。 * substring1("平23",1) => "23" */ function substring1(str,begin) { return str.substring(begin); } /** * 文字列から一部を抽出する。 * substring1("平成23年",2,4) => "23" */ function substring2(str,begin,end) { return str.substring(begin,end); } /** * 文字列から最初に出現した固定小数点数値を抽出して返す。 * @param str 文字列 (string) * @return 固定小数点数値の度数(double) */ function pickupNum(str) { var size = str.length; var s = -1; var e = 0; var fract = false; for (var i = 0; i < size; i++) { var ch = str.charAt(i); if ('0' <= ch && ch <= '9') { if (s < 0) s = i; e = i; } else if (ch == '.') { if (fract) break; fract = true; } else { break; } } return parseFloat(str.substring(s, e+1)); } /** * 数値と文字が混じった文字列から、数値を抽出して、出現順に配列にして返す。 * @param str 文字列 (string) * @return 数値(double)の配列 */ function pickupNums(str) { var nums = new Array(); var n = 0; var s = -1; var e = 0; var inNum = false; var fract = false; var size = str.length; for (var i = 0; i < size; i++) { var ch = str.charAt(i); if ('0' <= ch && ch <= '9') { if (!inNum) s = i; e = i; inNum = true; } else if (ch == '.') { if (inNum) { if (fract) { nums[n++] = parseFloat(str.substring(s, e+1)); inNum = false; fract = false; } else { fract = true; } } } else { if (inNum) nums[n++] = parseFloat(str.substring(s, e+1)); inNum = false; fract = false; } } if (inNum) nums[n++] = parseFloat(str.substring(s, e+1)); return nums; } /** * 文字列から数値を1個以上取り出し、それらの平均値を求める。 */ function average(str) { var nums = pickupNums(str); var n = nums.length; var val = 0.0; for (var i = 0; i < n; i++) val += val[i]; return val / n; } /** * 文字列1の先頭に文字列2が含まれていたらそれを除いた文字列を返す。 * 含まれていない場合は、文字列1を返す。 * 使用例: $removeStr2("茨城県つくば市","茨城県") => つくば市 * @param s1 文字列1 * @param s2 文字列2 * @return 文字列1の先頭の文字列2を取り除く */ function removeStr2(s1, s2) { var i = s1.indexOf(s2); if (i == 0) { return s1.substring(s2.length); } else { return s1; } } /* * 全角文字列を半角文字列に変換する。 */ function zen2han(input) { han = "0123456789.,-+"; zen = "0123456789.,-+"; str = ""; for (i=0; i<input.length; i++) { c = input.charAt(i); n = zen.indexOf(c,0); if (n >= 0) c = han.charAt(n); str += c; } return str; }

History

Back