我在尝试编写一个将单词的所有变形都视为同一个基本单词的搜索引擎时遇到了麻烦。
- 所以对于动词来说,这些都是同一个词根,be:
- 数字/人(例如 am; is; are)
- 过去时或将来时的时态/情绪(例如 是;是;将是)
- 过去分词(例如 has been ; had been)
- 现在分词和动名词(例如 is being ; was not be funny; 早点不如正确重要)
虚拟语气(例如 可能是;对完成某事至关重要;我希望是这样)</p>
- 然后对于名词,单数形式和复数形式都应该算作同一个基本词[ ᴇᴅɪᴛᴏʀ's ɴᴏᴛᴇ:这通常被称为单词的引用形式。]
例如,对于“<em>enable”,我不想将“<em>enables”和“<em>enabled”打印为单独的条目。这三个都应该算作同一个基本词,动词enable。
我可以使用以下哈希来防止打印重复项:
unless ($seenmatches{ $headmatches[$l] }++)
有人可以解释一下吗?在下面的评论中解释。
这并不能阻止复数/过去继续。有没有办法做到这一点,或者一些完全不同的方法,可能涉及一个正则表达式和/或替换,然后是一个 unsub ?
我不能用替换来修改这个词,因为那样打印就不会正确打印出来。虽然我还没到阶段,但最终我想包括不规则过去时 [ ᴇᴅɪᴛᴏʀ's ɴᴏᴛᴇ: 和不规则名词?] 以及
我不确定您还需要回答我的问题,所以请让我知道我无意中遗漏的任何内容,我会填写任何缺失的部分以帮助使其更清楚。