Make all full-text search fields support quoted phrases and OR and NOT operators. This affects all text search fields (any search field that looks like `*_matches`). Examples: * hakurei reimu - matches anything containing the words "hakurei" and "reimu", in any order. * hakuri or reimu - matches either "hakurei" or "reimu". * hakurei -reimu - matches "hakurei" but not "reimu" * "hakurei reimu" - matches the exact phrase "hakurei reimu" * "reimu hakurei" - matches the exact phrase "reimu hakurei" * https://danbooru.donmai.us/notes?search[body_matches]=reimu+hakurei * https://danbooru.donmai.us/notes?search[body_matches]=reimu+or+hakurei * https://danbooru.donmai.us/notes?search[body_matches]=reimu+-hakurei * https://danbooru.donmai.us/notes?search[body_matches]="hakurei+reimu" * https://danbooru.donmai.us/notes?search[body_matches]="reimu+hakurei" The phrase search ability partially fixes #4536 (Inconsistent behavior of search function for comments/forums). See `websearch_to_tsquery` [1] for full details of the search syntax. [1]: https://www.postgresql.org/docs/current/textsearch-controls.html#TEXTSEARCH-PARSING-QUERIES