StanfordCoreNLP newlineIsSentenceBreak без удаления\n

У меня есть ввод текста

Меня зовут Раму\n Мне 25 лет.

Я использую StanfordCoreNLP для разделения предложений.

Properties props = new Properties();
props.put("annotators", "tokenize, ssplit, pos, lemma, ner, parse");
props.put("ssplit.newlineIsSentenceBreak", "always");
props.put("threads", "24");

Это разделило мой текст на два предложения.

  1. меня зовут раму
  2. Мне 25 лет.

Но мне нужно сохранить \n. Мой ожидаемый результат

  1. Меня зовут Раму\n
  2. Мне 25 лет.

Может ли кто-нибудь предложить решение для этого?


person Vaisakh Prakash    schedule 31.05.2018    source источник


Ответы (1)


Вы можете посмотреть на BeforeAnnotation и AfterAnnotation прикреплен к CoreLabel. Это даст вам пробел до и после данного токена, который должен включать символы новой строки. В Simple API они возвращаются функциями before() и after() в предложении.

person Gabor Angeli    schedule 01.06.2018