#regex #spring-boot #spring-data-mongodb #quotes #mql
Вопрос:
Я использую spring boot с spring data mongo и @Query для выполнения запроса выражения регулярного выражения, также используя заклинание.
В моих документах есть что-то вроде этого
Я хочу иметь возможность фильтровать также по предсказательной строке в зависимости от языка (не беспокойтесь о языках, моя главная проблема заключается в регулярном выражении).
@Query(
"{$and: [ ?#{ ([6] == null) ? { $expr : 'true'} : { 'translations' : {$elemMatch: { 'language' : [7], 'description' : {$regex : [6]} } } }}]}")
public List<MyObject> findByCatalog(
String predictive,
String locale);
Основная проблема заключается в том, что регулярное выражение не работает, потому что я добавляю в прогностическую строку//, и оно добавляет дополнительные кавычки, которые всегда ничего мне не возвращают.
Есть какое-нибудь решение? Я пробовал разные вещи, и я в отчаянии, пожалуйста, не говорите «изменить шаблон монго», потому что на самом деле запрос больше, чем это.
Заранее спасибо
Ответ №1:
Решением было использовать .. вместо//, и это работает идеально