Number Format Conversions

Conversion between formatted decimals

  • apoc.number.format(number) format a long or double using the default system pattern and language to produce a string

  • apoc.number.format(number, pattern) format a long or double using a pattern and the default system language to produce a string

  • apoc.number.format(number, lang) format a long or double using the default system pattern pattern and a language to produce a string

  • apoc.number.format(number, pattern, lang) format a long or double using a pattern and a language to produce a string

  • apoc.number.parseInt(text) parse a text using the default system pattern and language to produce a long

  • apoc.number.parseInt(text, pattern) parse a text using a pattern and the default system language to produce a long

  • apoc.number.parseInt(text, '', lang) parse a text using the default system pattern and a language to produce a long

  • apoc.number.parseInt(text, pattern, lang) parse a text using a pattern and a language to produce a long

  • apoc.number.parseFloat(text) parse a text using the default system pattern and language to produce a double

  • apoc.number.parseFloat(text, pattern) parse a text using a pattern and the default system language to produce a double

  • apoc.number.parseFloat(text,'',lang) parse a text using the default system pattern and a language to produce a double

  • apoc.number.parseFloat(text, pattern, lang) parse a text using a pattern and a language to produce a double

  • The full list of supported values for pattern and lang params is described in DecimalFormat JavaDoc

Examples

The following formats a double value using the default system pattern:
RETURN apoc.number.format(12345.67) as value;
Table 1. Results
Value

12,345.67

The following formats a double value, using . as thousand separator, , as decimal separator, rounding down:
RETURN apoc.number.format(12345, '#,##0.00;(#,##0.00)', 'it') as value;
Table 2. Results
Value

12.345,00

The following formats a double value, using . as thousand separator and , as decimal separator:
RETURN apoc.number.format(12345.67, '#,##0.00;(#,##0.00)', 'it') as value;
Table 3. Results
Value

12.345,67

The following parses a formatted value as an int:
RETURN apoc.number.parseInt('12.345', '#,##0.00;(#,##0.00)', 'it') as value;
Table 4. Results
Value

12345

The following parses a formatted value as a float:
RETURN apoc.number.parseFloat('12.345,67', '#,##0.00;(#,##0.00)', 'it') as value;
Table 5. Results
Value

12345.67

The following formats a non numeric value:
RETURN apoc.number.format('aaa') AS value;
Table 6. Results
Value

null

The following parses a non numeric value:
RETURN apoc.number.parseInt('aaa') AS value;
Table 7. Results
Value

null