postgresql/contrib/test_parser
Tom Lane 5fcb079858 Add sample text search dictionary templates and parsers, to replace the
hard-to-maintain textual examples currently in the SGML docs.  From
Sergey Karpov.
2007-10-15 21:36:50 +00:00
..
expected Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
sql Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
Makefile Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
README.test_parser Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
test_parser.c Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
test_parser.sql.in Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00
uninstall_test_parser.sql Add sample text search dictionary templates and parsers, to replace the 2007-10-15 21:36:50 +00:00

README.test_parser

Example parser
==============

This is an example of a custom parser for full text search.

It recognizes space-delimited words and returns only two token types:

 - 3,  word,  Word

 - 12, blank, Space symbols

The token numbers have been chosen to keep compatibility with the default
ts_headline() function, since we do not want to implement our own version.

* Configuration

The parser has no user-configurable parameters.

* Usage

1. Compile and install

2. Load dictionary

   psql mydb < test_parser.sql

3. Test it

   mydb# SELECT * FROM ts_parse('testparser','That''s my first own parser');
    tokid | token
   -------+--------
        3 | That's
       12 |
        3 | my
       12 |
        3 | first
       12 |
        3 | own
       12 |
        3 | parser

   mydb# SELECT to_tsvector('testcfg','That''s my first own parser');
   to_tsvector
   -------------------------------------------------
   'my':2 'own':4 'first':3 'parser':5 'that''s':1
   
   mydb# SELECT ts_headline('testcfg','Supernovae stars are the brightest phenomena in galaxies', to_tsquery('testcfg', 'star'));
   headline
   -----------------------------------------------------------------
   Supernovae <b>stars</b> are the brightest phenomena in galaxies
   
That's all.