version 11 (Modified)
String (expression{; format}) 文字列
| 引数 | 型 | 説明 | |
| expression | 文字列式を返したい式 | ||
| (実数、整数、倍長整数、日付、時間、文字列、 | |||
| テキスト、ブールを指定可能) | |||
| format | 文字列 | 数値 | 表示フォーマット | |
| 戻り値 | 文字列 | 式の文字列式 |
説明
stringコマンドは、expressionに渡した数値、日付、時間、文字列、またはブールを文字列に変換します。
オプションのformatを指定しない場合、適当なデフォルトの形式で文字列が返されます。formatを指定すると、結果の文字列は指定した形式になります。
数値式
expressionが数値(実数、整数、倍長整数)である場合、オプションで文字列フォーマットを渡すことができます。次に例を示します。
| 例題 | 結果 |
| String(2^15) `デフォルトフォーマットを使用 | 32768 (Default format used here) |
| String(2^15;"###,##0 Inhabitants") | 32,768 Inhabitants |
| String(1/3;"##0.00000") | 0.33333 |
| String(1/3) `デフォルトフォーマットを使用 | 0.3333333333333330000 (Default format used here) |
| String(Arctan(1)*4) | 3.141592653589790000 (Default format used here) |
| String(Arctan(1)*4;"##0.00") | 3.14 |
| String(-1;"&x") | 0xFFFFFFFF |
| String(-1;"&$") | $FFFFFFFF |
| String(0 ?+ 7;"&x") | 0x0080 |
| String(0 ?+ 7;"&$") | $80 |
| String(0 ?+ 14;"&x") | 0x4000 |
| String(0 ?+ 14;"&$") | $4000 |
| String(Num(1=1);"True;;False") | True |
| String(Num(1=2);"True;;False") | False |
フォーマットは、フォームの数値フォーマットと同じ方法で指定します。詳細は、4D Design Referenceマニュアルを参照してください。カスタムフォーマットの書式名をformatに渡すことができます。カスタムフォーマットの名前は“|”で始めなければなりません。
日付式
expressionが日付の場合、デフォルトフォ−マット(YY.MM.DD)を使用して文字列が返されます。format 引数には、以下の表に示す定数のいづれか1つを渡すことができます ("Date Display Formats" テーマ) 。
| フォーマット 名称 | 例題 | |
| 1 | System date short | 12/29/2006 |
| 2 | System date abbreviated | Sun, Dec 29, 2006 |
| 3 | System date long | Sunday, December 29, 2006 |
| 4 | Internal date short special | 12/29/06 or 12/29/1896 または12/29/2096 |
| 5 | Internal date long | December 29, 2006 |
| 6 | Internal date abbreviated | Dec 29, 2006 |
| 7 | Internal date short | 12/29/2006 |
| 8 | ISO date | 2006-12-29T00:00:00 |
| 100 | Blank if null | 0の代わりに"" |
Notes:
・ISO DateフォーマットはISO8601に合致する標準フォーマットです。このフォーマットには、日付と時間が含まれます。例えば、「2006/5/31 PM1:20」は、「2006-05-31T13:20:00」となります。これらはXMLの処理やWebサービスで使用されます。4Dは、単体のフィールドに日付と時間を入れることをサポートしていません。しかしながら、Stringコマンドは日付に対してこのフォーマットを扱うことができます。
・Blank if null定数はフォーマットに他のフォーマットに加算して使用しなければなりません。追加することにより、Null値の場合、4Dは0の代わりに空の文字列を返します。
以下は今日が2006/12/29の場合の例です。
$vsResult:=String(Current date) ` $vsResultは"12/29/06" $vsResult:=String(Current date;Internal date long) ` $vsResultは"December 29, 2006" $vsResult:=String(Current date;ISO Date) ` $vsResultは"2006-12-29T00:00:00"
時間式
expressionが時間の場合、デフォルトフォ−マット(HH:MM:SS)を使用して文字列が返されます。format 引数には、以下の表に示す定数のいづれか1つを渡すことができます ("Time Display Formats" テーマ) 。
| フォーマット 名称 | 例題 | |
| 1 | HH:MM:SS | 01:02:03 |
| 2 | HH:MM | 01:02 |
| 3 | Hour Min Sec | 1時2分3秒 |
| 4 | Hour Min | 1時2分 |
| 5 | HH MM AM PM | 1:02 AM |
| 6 | MM SS | 62:03 |
| 7 | Min Sec | 62分3秒 |
| 8 | ISO Time | 0000-00-00T01:02:03 |
| 9 | System Time short | 01:02:03 |
| 10 | System Time long abbreviated | 1:02:03 AM (Macのみ) |
| 11 | System Time long | 1:02:03 AM HNEC (Macのみ) |
| 100 | Blank if null | 0の代わりに"" |
Notes:
・ISO Dateフォーマットについての詳細は、上記のNotesを参照してください。
・Blank if null定数はフォーマットに他のフォーマットに加算して使用しなければなりません。追加することにより、Null値の場合、4Dは0の代わりに空の文字列を返します。
以下の例は、現在時刻が5:30 PM45秒であるものとします。
$vsResult:=String(Current time) ` $vsResultは"17:30:45" $vsResult:=String(Current time;Hour Min Sec) ` $vsResultは"17時30分45秒"
文字列式
expressionが文字列またはテキスト型の場合、コマンドは引数に渡した値と同じ値を返します。これは特にポインタを使用している汎用プログラミングで有効です。
この場合、format引数は渡されても無視されます。
ブール式
expressionがブール 型の場合、コマンドはアプリケーションのランゲージに文字列 "True" または"False"を返します(例えば、4Dのフランス語バージョンでは、“Vrai”または“Faux”)。
この場合、format引数は渡されても無視されます。
参照
Date, Num, Time string.