Inhaltsverzeichnis

Search

  1. Vorwort
  2. Umwandlungssprache
  3. Konstanten
  4. Operatoren
  5. Variablen
  6. Datumsangaben
  7. Funktionen

Referenzhandbuch für die Umwandlungssprache

Referenzhandbuch für die Umwandlungssprache

IS_NUMBER

IS_NUMBER

Gibt zurück, ob ein String eine gültige Zahl ist. Eine gültige Zahl besteht aus den folgenden Teilen:
  • Optionales Leerzeichen vor der Zahl
  • Optionales Zeichen (+/-)
  • Eine oder mehrere Ziffern mit einem Dezimaltrennzeichen
  • Optionale wissenschaftliche Schreibweise wie die Buchstaben „e“ oder „E“ (und „d“ oder „D“ in Windows), gefolgt von einem optionalen Zeichen (+/-), gefolgt von einer oder mehreren Ziffern
  • Optionaler Leerraum nach der Zahl
Folgende Zahlen sind gültig:
' 100  ' '   +100' '-100' '-3.45e+32' '+3.45E-32' '+3.45d+32' (
Windows only
) '+3.45D-32' (
Windows only
) '.6804'
Der Ausgabeport für einen IS_NUMBER-Ausdruck muss einen String- oder numerischen Datentyp aufweisen.
Mit IS_NUMBER können Sie Daten in einer Einfachdatei testen oder filtern, bevor sie in ein Ziel geschrieben werden.

Syntax

IS_NUMBER(
value
)
In der folgenden Tabelle wird das Argument für diesen Befehl beschrieben:
Argument
Erforderlich/
Optional
Beschreibung
value
Erforderlich
Muss ein String-Datentyp sein. Übergibt die auszuwertenden Zeilen. Sie können einen beliebigen gültigen Umwandlungausdruck eingeben.

Rückgabewert

TRUE (1), wenn die Zeile eine gültige Zahl ist.
FALSE (0), wenn die Zeile keine gültige Zahl ist.
NULL, falls ein Wert in der Funktion NULL ist.

Beispiele

Der folgende Ausdruck prüft den Port ITEM_PRICE auf gültige Zahlen:
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 blanks
''
0 (False)  
Empty string
'+123abc'
0 (False)
'  123'
1 (True)  
Leading white blanks
'123  '
1 (True)  
Trailing white blanks
'ABC'
0 (False)
'-ABC'
0 (False)
NULL
NULL
Mit IS_NUMBER können Sie Daten prüfen, bevor Sie eine der numerischen Konvertierungsfunktionen wie TO_FLOAT verwenden. Beispiel: Der folgende Ausdruck prüft die Werte im Port ITEM_PRICE und konvertiert alle gültigen Zahlen in Gleitkommawerte mit Double-Präzision. Wenn der Wert keine gültige Zahl ist, gibt
Data Integration Service
0.00 zurück:
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 blanks
''
0.00   
Empty string
'+123abc'
0.00
''  123ABC'
0.00
'ABC'
0.00
'-ABC'
0.00
NULL
NULL