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!