doc-locale/fr-fr/user/search/exact_code_search.md
{{< details >}}
{{< /details >}}
{{< history >}}
index_code_with_zoekt et search_code_with_zoekt. Désactivé par défaut.zoekt_cross_namespace_search. Désactivé par défaut.index_code_with_zoekt et search_code_with_zoekt supprimés dans GitLab 17.1.zoekt_cross_namespace_search supprimé dans GitLab 18.7.{{< /history >}}
[!warning] Cette fonctionnalité est en disponibilité limitée. Pour plus d'informations, consultez l'epic 9404. Donnez votre avis dans le ticket 420920.
Avec la recherche exacte de code, vous pouvez utiliser les modes de correspondance exacte et d'expression régulière pour rechercher du code dans tout GitLab ou dans un projet spécifique.
La recherche exacte de code est propulsée par Zoekt et est utilisée par défaut dans les groupes où la fonctionnalité est activée.
Prérequis :
Pour utiliser la recherche exacte de code :
Vous pouvez également utiliser la recherche exacte de code dans un projet ou un groupe.
Les portées décrivent le type de données que vous recherchez. Les portées suivantes sont disponibles pour la recherche exacte de code :
| Portée | Global <sup>1</sup> <sup>2</sup> | Groupe | Projet |
|---|---|---|---|
| Code | {{< no >}} | {{< yes >}} | {{< yes >}} |
Footnotes :
zoekt_cross_namespace_search.{{< history >}}
zoekt_search_api. Activé par défaut.zoekt_search_api supprimé.{{< /history >}}
Avec l'API de recherche Zoekt, vous pouvez utiliser l'API de recherche pour la recherche exacte de code. Pour utiliser la recherche avancée ou la recherche de base à la place, spécifiez un type de recherche.
{{< history >}}
zoekt_exact_search. Désactivé par défaut.zoekt_exact_search supprimé.{{< /history >}}
GitLab dispose de deux modes de recherche :
Le mode de correspondance exacte est utilisé par défaut. Pour passer en mode d'expression régulière, à droite de la zone de recherche, sélectionnez Utiliser une expression régulière ({{< icon name="regular-expression" >}}).
{{< history >}}
repo: introduit dans GitLab 19.0.{{< /history >}}
<!-- Remember to also update the table in `doc/drawers/exact_code_search_syntax.md` -->Ce tableau présente quelques exemples de requêtes pour les modes de correspondance exacte et d'expression régulière.
| Requête | Mode de correspondance exacte | Mode d'expression régulière |
|---|---|---|
"foo" | "foo" | foo |
foo file:^doc/ | foo dans les répertoires qui commencent par /doc | foo dans les répertoires qui commencent par /doc |
"class foo" | "class foo" | class foo |
class foo | class foo | class et foo |
foo or bar | foo or bar | foo ou bar |
class Foo | class Foo (sensible à la casse) | class (insensible à la casse) et Foo (sensible à la casse) |
class Foo case:yes | class Foo (sensible à la casse) | class et Foo (tous deux sensibles à la casse) |
foo -bar | foo -bar | foo mais pas bar |
foo file:js | foo dans les fichiers dont le nom contient js | foo dans les fichiers dont le nom contient js |
foo -file:test | foo dans les fichiers dont le nom ne contient pas test | foo dans les fichiers dont le nom ne contient pas test |
foo lang:ruby | foo dans le code source Ruby | foo dans le code source Ruby |
foo file:\.js$ | foo dans les fichiers dont le nom se termine par .js | foo dans les fichiers dont le nom se termine par .js |
foo.*bar | foo.*bar (littéral) | foo.*bar (expression régulière) |
sym:foo | foo dans les symboles tels que les noms de classes, de méthodes et de variables | foo dans les symboles tels que les noms de classes, de méthodes et de variables |
test repo:(?i)foo | test dans les projets dont le nom contient foo (insensible à la casse) | test dans les projets dont le nom contient foo (insensible à la casse) |
20_000 trigrammes. Pour plus d'informations, consultez le ticket 455073.gitlab-zoekt vers la version 1.5.0 ou ultérieure.