findByTitle (query operators)

MongoDB Queries

nicialmente, a query seria assim:

{ <field>: { $regex: /pattern/, $options: '<options>' } }

Field: campo que estamos buscando.

Pattern: funciona da seguinte forma, colocamos uma "?" e após, a numeração do parâmetro. Se por ventura o campo text fosse o segundo parametro seria "?1".

Options: é usado para especificar opções adicionais para a operação de busca com expressões regulares.

  • i: Ignora diferenças entre maiúsculas e minúsculas na busca (case-insensitive).

  • m: Trata a entrada como múltiplas linhas. Os caracteres ^ e $ correspondem ao início e ao fim de cada linha, respectivamente.

  • s: Permite que o ponto (.) corresponda a caracteres de nova linha ().

  • x: Permite adicionar espaços na expressão regular para maior legibilidade, que serão ignorados durante a correspondência.

  • l: Usa correspondência de maiúsculas/minúsculas baseada em convenções locais.

  • u: Usa correspondência compatível com Unicode.

@Query("{ 'title': { $regex: ?0, $options: 'i' } }")
List<Post> searchTitle(String text);

Atualizado