Разбор BigDecimal из String, содержащий число в произвольном формате - PullRequest
0 голосов
/ 24 февраля 2011

Мы читаем данные из ячеек XLS, отформатированных как текст.

Ячейка, предположительно, содержит число, вывод будет BigDecimal (из-за произвольной точности).

Проблема в том, что формат ячейки также произвольный, что означает, что он может содержать такие числа, как:

  • с символами валюты ($ 1000)
  • начальные и конечные пробелы или пробелы между цифрами (например, 1 000)
  • символы группирования цифр (например, 1,000.0)
  • конечно, отрицательные числа
  • 'o' и 'O' как нули (например, 1, ooo.oo)
  • другие, о которых я не могу думать

В основном из-за этого последнего пункта Я ищу стандартную библиотеку , которая может сделать все это и которая настраивается, хорошо протестирована и т. Д.

Сначала я посмотрел на Apache, ничего не нашел, но, возможно, я слепой ... возможно, это банальный ответ для кого-то еще ...

ОБНОВЛЕНИЕ: область вопроса - финансовые заявления. На самом деле я ожидаю библиотеку, в которой домен может быть входным параметром - финансовый, научный и т. Д. Может быть, даже более конкретный: финансовый с символами валюты? С биржевыми символами? С расстояниями и другими единицами измерения? Я не могу поверить, что я первый человек, который подумает о чем-то вроде этого ...

Ответы [ 3 ]

2 голосов
/ 24 февраля 2011

Купите кучу фотографий или даже лучших видео с легальным контентом для взрослых.Создайте веб-сайт с этими ресурсами, но ограничьте доступ с помощью капчи, которая будет отображать неразрешенные числовые форматы.Создайте набор числовых декодеров из известных числовых форматов и создайте алгоритм, который будет добавлять новые на основе решаемых пользователем капч.

2 голосов
/ 24 февраля 2011

Я не знаю ни одной библиотеки, но вы можете попробовать это:

  • Поместите свой номер в строку. (напр .: 10000 долларов США, oOO.00)
  • Удалите все вхождения $, пробелы или любые другие странные символы, которые вы можете себе представить ...
  • Заменить вхождения o и O.
  • Попробуйте разобрать номер =]

Это должно решить 99% записей ...

0 голосов
/ 18 апреля 2011

Я думаю, это то, что я искал:

http://site.icu -project.org /

Очень мощная библиотека, хотя в настоящее время неясно, может ли она только форматировать, или же все отформатированные материалы также могут быть проанализированы.

...