2015-06-07 2 views
1

Я запускаю небольшое тестовое приложение, используя Stanford Parser.Стэнфордский парсер: получить целое значение для CARD?

Парсер правильно распознает кардиналы, такие как «1990», «один», «два», «три». Я ищу способ получить целочисленные значения для аннотированных текстов. Очевидно, что это особенно интересно для текста, который изначально не состоял из цифр, таких как «один», «два» и т. Д.

Есть ли встроенная функция для этого?

ответ

2

Парсер не включает ничего подобного, но CoreNLP действительно имеет такую ​​функциональность.

Вы можете применить следующую функцию к объекту CoreMap каждого предложения, которое добавляет NumerizedTokensAnnotation к предложению и NumericValueAnnotation к каждому токену.

NumberNormalizer.findAndAnnotateNumericExpressions(sentence); 

К сожалению, не существует какой-либо документации этой функции, но вы посмотрите на источник NumberNormalizer, который содержит по крайней мере некоторые комментарии и объяснения могут.

+0

Извините за поздний ответ. Это работало, как прелесть, спасибо! – schlimpf

Смежные вопросы