【发布时间】:2015-01-08 02:55:00
【问题描述】:
有人知道从哪里开始吗? 例如,从“我有两个苹果”中提取“两个”。 我正在寻找 NLP 或 QDA 的方向。任何关于如何去做的线索将不胜感激。
【问题讨论】:
-
有一个查找表怎么样 ['one':1,'two':2,'three':3,...]
有人知道从哪里开始吗? 例如,从“我有两个苹果”中提取“两个”。 我正在寻找 NLP 或 QDA 的方向。任何关于如何去做的线索将不胜感激。
【问题讨论】:
您可能对斯坦福 NER 系统感兴趣。 它标识数字实体。
【讨论】:
这个呢
(((?:sixty|seventy|eighty|ninety|fourteen|sixteen|seventeen|eighteen|nineteen|one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fourteen|fifteen|twenty|thirty|forty|fifty|hundred|thousand|million|billion|trillion|and)[, -]*)+)
单词必须是乱序的,因为正则表达式匹配找到的第一个替换。六十需要在六之前,十四在四之前,等等。
演示: Regexr
这个正则表达式可能会更好,它管理它忽略尾随空格
((\b(?:fourty|sixty|seventy|eighty|ninety|fourteen|sixteen|seventeen|eighteen|nineteen|one|two|three|four|five|six|seven|eight|nine|ten|eleven|twelve|thirteen|fifteen|twenty|thirty|forty|fifty|hundred|thousand|million|billion|trillion|and)\b[ , -]*)+(?=\W|$)+)
此外,您会注意到在这个正则表达式的开头有 40 个。这是四十的一个非常常见的拼写错误,所以我认为这可能对你有用。如果您愿意,可以将其删除。
【讨论】: