Boyer-Moore string searching in LIKE, ILIKE, and/or POSITION?

From: "Martin L(dot) Buchanan" <martinlbuchanan(at)gmail(dot)com>
To: pgsql-general list <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Boyer-Moore string searching in LIKE, ILIKE, and/or POSITION?
Date: 2023-02-09 00:04:20
Message-ID: CAPfd9M=kwDT2TRTRNFUcOkoFLa5FL2Dxshjqz3zBrbqQ=1agLA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

In the PostgreSQL Todo wiki, Boyer-Moore string searching for LIKE is
mentioned as an outstanding item.

For the common and simple cases of find this string anywhere in another
string:

str LIKE '%foo%'

str ILIKE '%foo%'

position('foo' in str) > 0

Is Boyer-Moore string searching now used by any of these three?

I checked the PG documentation and found no info about this other than what
was in the Todo wiki, https://wiki.postgresql.org/wiki/Todo, under
Functions. Tom Lane gave a thumbs down to the idea back in 2008, but that
was a long time ago:
https://www.postgresql.org/message-id/27645.1220635769@sss.pgh.pa.us .

Sincerely,

Martin L Buchanan
senior software engineer
Laramie, WY, USA

Responses

Browse pgsql-general by date

  From Date Subject
Next Message David Rowley 2023-02-09 01:30:00 Re: Boyer-Moore string searching in LIKE, ILIKE, and/or POSITION?
Previous Message Katsuya Okizaki 2023-02-08 23:10:22 Re: How do a user-defined function that returns a table executes a query?