Hi, I'm Ask INFA!
What would you like to know?
ASK INFAPreview
Please to access Ask INFA.

目次

Search

  1. はじめに
  2. 関数リファレンス
  3. 定数
  4. 演算子
  5. 日付
  6. 関数
  7. システム変数
  8. データ型リファレンス

関数リファレンス

関数リファレンス

IS_NUMBER

IS_NUMBER

文字列が正しい数値であるかどうかを返します。
正しい数値は、以下の要素から構成されています。
  • 数値の前のスペース(なくともよい)
  • 符号(+/-)(なくともよい)
  • 1つまたは複数の数字、および小数点(なくともよい)
  • 科学的記法(なくともよい)。たとえば、文字‘e’または‘E’(Windowsでは文字‘d’または‘D’)に符号(+/-)が続き、そのあとに1つまたは複数の数字が続く(符号はなくともよい)。
  • 数値のあとのスペース(なくともよい)
以下のものはすべて正しい数値です。
' 100  ' '   +100' '-100' '-3.45e+32' '+3.45E-32' '+3.45d+32' (
Windows only
) '+3.45D-32' (
Windows only
) '.6804'
IS_NUMBER式のターゲットカラムは、Stringデータ型またはNumericデータ型でなければなりません。
IS_NUMBERを使用して、フラットファイル内のデータをテストまたはフィルタリングしてから、ターゲットに書き込むこともできます。

構文

IS_NUMBER(
value
)
引数
必須/
オプション
説明
value
必須
文字列データ型であること。評価したい行を渡します。有効な式を必要に応じて入力できます。

戻り値

行が正しい数値の場合は、TRUE(1)。
行が正しい数値でない場合は、FALSE(0)。
式の中の値がNULL値である場合は、NULL。

次の式は、ITEM_PRICEカラムの値が正しい数値であるかどうかを確認します。
IS_NUMBER( ITEM_PRICE )
ITEM_PRICE
RETURN VALUE
'123.00'
1 (True)
'-3.45e+3'
1 (True)
'-3.45D-3'
1 (True - Windows only)
'-3.45d-3'
0 (False - UNIX only)
'3.45E-'
0 (False)  
Incomplete number
'    '
0 (False)  Consists entirely of whitespace
''
0 (False)  
Empty string
'+123abc'
0 (False)
'  123'
1 (True)  
Leading whitespace
'123  '
1 (True)  
Trailing whitespace
'ABC'
0 (False)
'-ABC'
0 (False)
NULL
NULL
TO_FLOATなどの数値変換関数を実行する前に、IS_NUMBERを使用してデータをテストできます。例えば、次の式はITEM_PRICEカラムの値を検査し、有効な数字を倍精度の浮動小数点値に変換します。値が有効な数値でない場合、
データ統合
は0.00を返します。
IIF( IS_NUMBER ( ITEM_PRICE ), TO_FLOAT( ITEM_PRICE ), 0.00 )
ITEM_PRICE
RETURN VALUE
'123.00'
123
'-3.45e+3'
-3450
'3.45E-3'
0.00345
'    '
0.00   
Consists entirely of whitespace
''
0.00   
Empty string
'+123abc'
0.00
''  123ABC'
0.00
'ABC'
0.00
'-ABC'
0.00
NULL
NULL