我正在尝试用 PHP 编写自然语言解析器和搜索引擎。到目前为止我想到的所有方法要么实现、使用起来很麻烦,要么效率不高。
我的想法之一包括一个可以对简化字符串执行正则表达式的脚本,即。从字符串中删除各种单词,然后首先检查生成的字符串是否有用户正在寻找的内容 - 即“开放时间”,然后如果可能的话,检查他们正在搜索的地点 - 让我们说“Derngate”。其余的类似。
有人能指出我更有效的做事方式吗?如果可以的话,我不想在每个页面加载时执行 25 个不同的正则表达式 - 或者无论计数是多少。
非常感谢!
编辑:我只是好奇,仅此而已。我宁愿自己做(看看它是如何工作的),而不是跳入像 Lucene 这样的东西。
最佳答案
您应该研究一下mapReduce 和并行化:
http://code.google.com/edu/parallel/mapreduce-tutorial.html
我相信谷歌就是这样做的。当然,您没有十亿台计算机来帮助您。
(我还想说,在纯 php 中执行此操作会非常慢)
关于php - 使用 PHP 创建自然语言搜索引擎,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5421401/