我需要使用 ner 系统(当前使用 natasha)提供单词中的日期识别。
也就是说,有一个日期文本“2001 年 2 月 28 日”,您需要提取该日期。这怎么能做到呢?
未给出所需结果的示例(代码块未找到数据):
matches = dates_extractor(doc.text)
v_dt_cnt = 0
for val in matches:
obj_t = val.fact
print(' Date', v_dt_cnt)
更新:您可以运行的示例代码
from natasha import (
MorphVocab,
DatesExtractor
)
morph_vocab = MorphVocab()
dates_extractor = DatesExtractor(morph_vocab)
for text in ("28 февраля 2001 года",
"двадцать восьмое февраля 2001",
"28 февраля две тысячи первого года",
"двадцать восьмое февраля две тысячи первого года"):
print(text)
for date in dates_extractor(text):
print(date)
print('---')
结论:
28 февраля 2001 года
Match(start=0, stop=20, fact=Date(year=2001, month=2, day=28))
---
двадцать восьмое февраля 2001
Match(start=17, stop=29, fact=Date(year=2001, month=2, day=None))
---
28 февраля две тысячи первого года
Match(start=0, stop=10, fact=Date(year=None, month=2, day=28))
---
двадцать восьмое февраля две тысячи первого года
---
该函数
replace_words_with_numbers()将用文字书写的数字替换为其等价的数字: