---
url: >-
  /statelake/scripting-reference/functions-and-procedures/numeric-functions/iscurrencynumber.md
---

# IsCurrencyNumber

**IsCurrencyNumber** returns a boolean value of **True** or False.

**True** if the input string contains only numeric characters, and **True** if the string contains currency format symbols and numerals.

Any other string returns **FALSE**.

If this function returns **True** then you can safely use a **conversion function** on it to turn it into a numeric data type. The currency symbols allowable within this function are defined within the computer’s regional settings. Please refer to [Conversion Functions](/statelake/scripting-reference/functions-and-procedures/conversion-functions/) for more information.

Also refer to **IsNumber** which is a function that checks if the string contains only numbers without any currency formatting. This information is available at [IsNumber](/statelake/scripting-reference/functions-and-procedures/numeric-functions/isnumber).

**Declaration**: Function IsCurrencyNumber(const S : string) : Boolean

An example follows.

```pascal
Procedure OnMapEvent(var Value:variant);
begin
   Value := IsCurrencyNumber('abc123');      // returns FALSE
   Value := IsCurrencyNumber('758');         // returns TRUE
   Value := IsCurrencyNumber('$5,323.61');   // returns TRUE
end;
```
