Talend: преобразование строки в BigDecimal - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь преобразовать номер строки из одной MySQL таблицы в другую.

Я много раз использовал следующее, но в данном случае это не работает, и я не уверен относительно того, почему. Преобразуемая строка: 50,000.00.

Formula generating error

При использовании этой формулы в tMap выдается следующая ошибка:

Error

Когда я смотрю на код 3031:

code being used

Так что что-то не работает так, как я ожидаю. Любая помощь будет великолепна.

1 Ответ

1 голос
/ 30 января 2020

В синтаксисе регулярных выражений «$» обозначает конец строки. В своем регулярном выражении вы пытаетесь удалить любой символ после конца строки, который не является числом или точкой, что не сработает, поэтому «,» никогда не удаляется из вашей строки, что приводит к ошибке преобразования.
Вы можете сделать это:

new BigDecimal(row1.Trade_Amount.replaceAll("[^\\d.]", ""))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...