PostgreSQL8.3.X新特性-全文搜索(三)
发布时间:2020-12-13 17:59:26 所属栏目:百科 来源:网络整理
导读:PostgreSQL8.3.X新特性-全文搜索(三) 分析器(分词程序) 文本搜索分析器(分词程序)负责把裸的文档文本分解成记号并且标识每个记号的类型,这里可能的类型集由分析器(分词程序)自身定义。请注意分析器(分词程序)并不修改文本 -- 它只是标识可能的词的
PostgreSQL8.3.X新特性-全文搜索(三)
分析器(分词程序) 文本搜索分析器(分词程序)负责把裸的文档文本分解成记号并且标识每个记号的类型,这里可能的类型集由分析器(分词程序)自身定义。请注意分析器(分词程序)并不修改文本 -- 它只是标识可能的词的边界。因为这个有限的范围,所以应用相关的客户化分析器没有客户化的字典需求那么大。目前,PostgreSQL 只提供了一个内置的分析器,我们发现它可以适用于很广的应用范围。 内置的分析器(分词程序)叫 pg_catalog.default。它包含 23 种记号类型:
我们可以用分析器(分词程序)从同一段文本里生成重叠的记号。比如,一个连接词就会被当做整个词报告,也会被分隔成几个部分报告出来: SELECT alias,description,token FROM ts_debug('foo-bar-beta1'); alias | description | token -----------------+------------------------------------------+--------------- numhword | Hyphenated word,letters and digits | foo-bar-beta1 hword_asciipart | Hyphenated word part,all ASCII | foo blank | Space symbols | - hword_asciipart | Hyphenated word part,all ASCII | bar blank | Space symbols | - hword_numpart | Hyphenated word part,letters and digits | beta1 这个行为是有需要的,因为它允许搜索既可匹配组合词,也可匹配部件词。下面是另外一个指示性的例子: SELECT alias,token FROM ts_debug('http://example.com/stuff/index.html'); alias | description | token ----------+---------------+------------------------------ protocol | Protocol head | http:// url | URL | example.com/stuff/index.html host | Host | example.com url_path | URL path | /stuff/index.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |