Regex в SQLite и ObjectiveC - PullRequest
       4

Regex в SQLite и ObjectiveC

0 голосов
/ 17 октября 2011

У меня есть приложение, которое работает как словарь, и теперь мне нужна небольшая помощь.

Я хотел бы использовать регулярное выражение в SQLite при поиске слов, но регулярное выражение является пользовательской функцией, поэтому оно не поддерживаетсянепосредственно SQLite.

Идея состоит в том, что приложение должно найти все слова, созданные из букв, например, 'aebip', и должно возвращать такие слова, как babe, abe, pie и т. Д.

Любая помощь будет принята с благодарностью.

Итак, чтобы быть более понятным, я хотел бы сделать оператор select с подобным, который возвращает все слова, содержащие буквы a, e, b, i и p, но не должен быть ограничен по длине слова, так что яполучить слово be, а также die и pie, даже если буква bi отсутствует в последних двух.

Приносим извинения за неудобства, которые я вызвал из-за неправильно сформулированного вопроса.

Ответы [ 3 ]

3 голосов
/ 17 октября 2011

Вы пробовали использовать GLOB?

SELECT * FROM tablename WHERE wordname GLOB "*[aebip]*"
1 голос
/ 17 октября 2011

Другим решением будет использование оператора UNION (который удалит дублирующиеся строки).

SELECT * FROM tablename WHERE wordname LIKE '%a%'
UNION ALL
SELECT * FROM tablename WHERE wordname LIKE '%b%'
....
0 голосов
/ 17 октября 2011
SELECT * FROM tablename 
WHERE wordname LIKE '%a%' 
AND wordname LIKE '%e%' 
AND wordname LIKE '%b%' 
AND wordname LIKE '%i%' 
AND wordname LIKE '%p%'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...