Побег всех специальных символов с обратной косой чертой. Фигурные скобки не будут работать с поиском подстроки, поскольку они определяют полные токены. Например,% {ello}% не будет соответствовать токену 'Hello'
Экранированные пробелы будут включены в поисковый токен, поэтому строка поиска "% stay \ near \ me%" будет считаться буквальной строкой "stay near me" и не будет вызывать оператор "near".
Если вы индексируете короткие строки (например, имена и т. Д.) И хотите, чтобы Oracle Text вел себя точно так же, как оператор like, вы должны написать свой собственный лексер, который не будет создавать токены для отдельных слов. (К сожалению, CATSEARCH не поддерживает поиск по подстроке ...)
Вероятно, было бы неплохо изменить поиски, чтобы использовать семантику текста оракула, с сопоставлением токенов, но в некоторых приложениях расширение по шаблону нескольких (коротких) токенов и числовых токенов будет создавать слишком много совпадений для строк поиска, что пользователи разумно ожидали бы работы.
Например, поиск "% I \ AM \ NUMBER \ 9%", скорее всего, завершится неудачей, если в индексированных данных много числовых токенов, поскольку все токены заканчиваются на "I" и начинаются с "9" необходимо найти и объединить, прежде чем результат может быть возвращен.
'I' и 'AM', вероятно, также включены в стоп-лист по умолчанию и будут полностью игнорироваться, поэтому для этого гипотетического приложения может использоваться нулевой стоп-лист, если эти токены важны.