Maison  >  Article  >  développement back-end  >  Comment construire correctement une requête Regex pour la recherche de sous-chaînes dans le pilote MongoDB Go ?

Comment construire correctement une requête Regex pour la recherche de sous-chaînes dans le pilote MongoDB Go ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-01 20:57:30163parcourir

How to Properly Construct a Regex Query for Substring Search in MongoDB Go Driver?

Récupération de données à l'aide d'une requête Regex dans le pilote Go MongoDB

Lors de l'interrogation d'une base de données pour des documents spécifiques à l'aide d'une recherche de sous-chaîne, il est essentiel de construire la requête correctement pour atteindre l'objectif résultats souhaités. Cet article explore l'utilisation du pilote MongoDB Go pour exécuter une requête regex et met en évidence un problème potentiel et sa solution.

Dans l'extrait de code fourni, la tentative de récupération des entrées contenant « il » à l'aide d'une requête regex est ne fonctionne pas. Le problème réside dans la construction du document BSON utilisé pour le filtrage.

La structure primitive.Regex s'attend à ce que le champ Pattern soit une chaîne sans barres obliques de début et de fin. Le code actuel tente d'utiliser une chaîne avec des barres obliques, ce qui est incorrect. Pour résoudre ce problème, l'ajustement suivant doit être effectué :

<code class="go">filter := bson.D{{"text", primitive.Regex{Pattern: "he", Options: ""}}}</code>

Avec cette modification, le code construira correctement un filtre BSON pouvant être utilisé pour les requêtes regex. La requête correspondra aux documents dont le champ de texte contient la sous-chaîne « il » et renverra les résultats attendus.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn