数値を任意の桁数の文字列に変換し、空の桁を0で埋める方法

数値を単純に文字列に変換するだけではなく、空白の桁を0で埋める方法を紹介します。

考え方としては、数値を任意の桁数の文字列に変換し、その文字列の空白部分を0に置き換えるといったものです。

マイナスの値を変換させた場合、マイナスの符号で1桁分使用します。

少数を変換させた場合、小数点で1桁分使用します。

 

数値を任意の桁数の文字列に変換し、空の桁を0で埋めるサンプル

n = 1234
str = FORMAT(n, 8) // 8桁の文字列に変換
str = REPLACE(str, " ", "0")
PRINT str

数値を任意の桁数の文字列に変換し、空の桁を0で埋める方法実行結果

 

FORMAT関数リファレンス

FORMAT関数のリファレンスをマニュアルから転載します。

戻値 = FORMAT( 数値, 幅, [小数点桁 or 16進指定] )
引数
 数値: 数値 もしくは文字
 幅: 出力される文字数 (数値より指定幅が大きい時は左側をスペースにて補完)
    数値ではなく文字が指定された場合は その文字で幅分を埋める
 小数点桁 or 16進指定: 表示する小数点桁数、 また -1 が指定された場合は16進数表記にする
戻値
 フォーマットされた文字列

 

REPLACE関数リファレンス

REPLACE関数のリファレンスをマニュアルから転載します。

戻値 = REPLACE( 文字列, 置換したい文字, 置換文字 )
 もしくは
戻値 = CHGMOJ( 文字列, 置換したい文字, 置換文字 )
引数
 文字列: 置換したい文字列を含んだ文字列
 置換したい文字: 置換したい文字列
 置換文字: 置換文字列
戻値
 置換された文字列
 (大文字,小文字の区別はしません)

少数を切り上げ、切り捨てする方法

少数を切り上げするためにはCEIL関数を利用します。

少数を切り捨てるためにはINT関数を利用します。

 

少数を切り上げ、切り捨てするサンプル

n = 1.23
PRINT "元の値 " + n
PRINT "切り上げ " + CEIL(n)
PRINT "切り捨て " + INT(n)

少数を切り上げ、切り捨てする方法実行結果

 

CEIL関数リファレンス

CEIL関数のリファレンスをマニュアルから転載します。

CEIL(引数)       // 正の方向へ切り上げ

 

INT関数リファレンス

INT関数のリファレンスをマニュアルから転載します。

INT(引数)        // 少数以下切落とし

 

フォルダ内のファイル一覧を取得する方法

フォルダ内のファイル一覧を取得するにはGETDIR関数を利用します。

取得したファイル名一覧は変数配列GETDIR_FILESに格納されます。

ファイル名の一部を指定して、一致するファイル一覧を取得することもできます。

同様に拡張子を指定して一致したファイルの一覧を取得することもできます。

 

フォルダ内のファイル一覧を取得するサンプル

uwscの文字列を含んだファイルをuwscのフォルダから取得します。

n = GETDIR(GET_UWSC_DIR, "*uwsc*", TRUE, 0) // UWSCのフォルダを指定
PRINT n + "個のファイルが見つかりました"
FOR i = 0 TO (LENGTH(GETDIR_FILES) - 1)
 PRINT GETDIR_FILES[i]
NEXT

フォルダ内のファイル一覧を取得する方法実行結果

 

GETDIR関数リファレンス

GETDIR関数のリファレンスをマニュアルから転載します。

戻値 = GETDIR( ディレクトリ, [ファイル指定, 不可視ファイルフラグ, 取得順番] )
引数
 ディレクトリ: ファイル名の取得のディレクトリ
 ファイル指定: ワイルドカード(*, ?) によるファイル名指定
         "\" を指定するとディレクトリ名の取得
 不可視ファイルフラグ: TRUE:不可視ファイルも含める、 FALSE:含めない(デフォルト)
 取得順番: ファイル並び 0:ファイル名(デフォルト)、1:サイズ、2:作成日、3:更新日、4:アクセス日
戻値
 ゲットした数を返す
 取得した情報は配列変数の GETDIR_FILES[ ] に格納される (配列はゼロから)

 

全角の数字を数値に変換する方法

プログラムやパソコンに強い人なら全角の数字が文字列であることをご存知かと思います。

全角の数字では文字列として扱われてしまうので数値として扱いたい場合は数値型に変換させる必要があります。

UWSCではVAL関数を利用することで簡単に出来てしまいます。

全角の数字でも半角の数字の文字列でも数値型に変換することができるので便利です。

 

全角の数字を半角に変換するサンプル

単純に数値に変換させます。

n = VAL("20")

 

全角の数字を半角に変換するサンプルその2

数値に変換されたことを確かめるために加算させています。

n = VAL("20") + 2
PRINT n

全角の数字を数値に変換する方法実行結果

 

VAL関数リファレンス

VAL関数のリファレンスをマニュアルから転載します。

戻値 = VAL( 文字列, [エラー値] )
引数
 文字列: 数値に変える文字列
 エラー値: 数値に変換できない場合に返す値
戻値
 数値
 数値変換できない場合はエラー値を、デフォルトでは ERR_VALUE (-999999)を返す

 

文字列の最初と最後に含まれる空白を取り除く方法

文字列の最初と最後に含まれる空白を取り除くにはTRIM関数を利用します。

デフォルトでは全角のスペースに対応していませんが引数で指定することで対応できます。

空白以外にも制御文字も取り除けます。

 

文字列の最初と最後に含まれる空白を取り除くサンプル

このサンプルをコピーしてもタブが上手くコピーできないかもしれません。

DIM before[] = " 半角スペース ", " 全角スペース ", " タブ "
FOR i = 0 TO (LENGTH(before) - 1)
 PRINT before[i]
 PRINT TRIM(before[i], TRUE) // 全角を削除するように指定
 PRINT "" // 見やすいように空白の行を入れる
NEXT

文字列の最初と最後に含まれる空白を取り除く方法実行結果

 

TRIM関数リファレンス

TRIM関数のリファレンスをマニュアルから転載します。

戻値 = TRIM( 文字列, [全角空白] )
引数
 文字列: 文字列
 全角空白:
 FALSE: 全角の空白は含めない (デフォルト)
 TRUE: 全角の空白を含めて削除
戻値
 両端の空白と制御文字が取り除かれた文字列