Requêtes FoxTrot
Une requête FoxTrot est composée d’un ou plusieurs mots. Les majuscules, les minuscules et les accents sont ignorés. La ponctuation est ignorée, sauf dans les cas suivants :

- Jokers
  - les mots se terminant par un astérisque correspondent à tous les mots ayant ce préfixe (par exemple, mot* correspondra à mot, mots, ou bien encore motus.
  - les mots commençant par un astérisque correspondent à tous les mots ayant ce suffixe (par exemple, *marché correspondra à marché, supermarché, ou bien encore démarché.
  - les mots entourés d’astérisques correspondent à tous les mots contenant ces caractères (par exemple, *terre* correspondra à terre, parterre, terrées, ou bien encore atterrées.
- Mots exclus
  - les mots commençant par un signe moins sont exclus. Par exemple, léman -lac trouvera tous les documents contenant léman mais ne contenant pas lac. Notez que ce signe moins dans un mot composé est considéré comme un séparateur de mots normal. Par exemple, couvre-chef est considéré comme deux mots : couvre chef.
- Chaînes entre guillemets
  - utilisez les guillemets pour chercher une séquence de mots. Par exemple "lac léman" trouvera lac léman mais ne trouvera pas un petit lac dans le bassin du léman.
  - les chaînes entre guillemets précédées par un signe moins sont des phrases exclues. Par exemple léman -"lac léman" trouvera tous les documents contenant léman mais ne contenant pas l’expression lac léman (qu’ils contiennent ou non le mot lac de façon isolée).
  - vous pouvez ajouter des mots exclus au début ou à la fin d’une chaîne entre guillemets, pour trouver les documents qui contiennent cette phrase sans qu’elle soit contiguë à ces mots exclus.
    Par exemple, "martin -dupont" trouvera les documents qui contiennent au moins une occurrence de martin qui ne fait pas partie de la phrase martin dupont ; mais dupont ou même martin dupont peut être présent à d’autres endroits du document (par exemple, cela trouvera martin dupuis ou bien martin dupuis rencontre lucien dupont ou même martin dupuis rencontre martin dupont, mais cela ne trouvera pas cette seule occurrence : martin dupont).
    Autre exemple : "-martin -lucien dupont" trouvera les documents qui contiennent le mot dupont sans qu’il ne fasse partie des phrases martin dupont ni lucien dupont (par exemple cela trouvera albert dupont ou bien albert dupont rencontre martin dupont mais cela ne trouvera pas ces seules occurrences : martin dupont ou lucien dupont)
- Recherches de proximité
  - Foxtrot donne un rang plus élevé aux documents dont les mots recherchés sont proches les uns des autres. Cependant, si vous voulez trouver uniquement les documents qui contiennent les mots spécifiés dans une certaine plage de proximité, vous pouvez utiliser une chaîne entre guillemets, et spécifier la plage (le nombre maximal d’autres mots entre les mots cherchés) entre des accolades placées immédiatement après le guillemet d’ouverture. Par exemple, "{2} martin albert lucien" trouvera les documents ayant au moins une occurrence de martin qui est séparée d’au maximum 2 autres mots d’occurrences de albert et lucien. Cela trouvera martin, lucien et albert sont amis ou bien albert, lucien et martin sont amis, mais cela ne trouvera pas martin et lucien sont amis avec albert.
  - vous pouvez également chercher les documents contenant plusieurs chaînes entre guillemets dans une plage de proximité donnée, en spécifiant la plage (le nombre maximal d’autres mots séparant les chaînes entre guillemets) entre des accolades au début de la requête. Par exemple, {4} "lucien dupont" "martin dupuis" trouvera lucien dupont est un ami de martin dupuis, mais cela ne trouvera pas lucien dupont est un des meilleurs amis de martin dupuis.
- Opérateur booléen
  - utilisez le caractère | (barre verticale) pour combiner deux (ou plus) mots avec un OU. Par exemple, paris | marseille trouvera les documents qui contiennent paris ou bien marseille. Vous pouvez aussi combiner des chaînes entre guillemets, par exemple paris | marseille | "clermont ferrand" | "saint etienne".
- Chaînes exactes
  - note: les chaînes exactes sont assez lentes, voire très lentes avec des mots très fréquents. À utiliser avec prudence.
  - les chaînes incluses entre des accents circonflexes (^) sont recherchées en tant que chaînes exactes : les majuscules comptent, les accents, les espaces, la ponctuation, tout compte.
  - notez que la chaîne cherchée doit contenir au moins un mot (composé de caractères alphanumériques), et que les mots partiels et les astérisques ne sont pas gérés. Par exemple, chercher ^:-)^ n’est pas autorisé (mais chercher ^salut :-)^ est autorisé) ; chercher ^mobile^ ne trouvera pas automobile ; et chercher ^*mobile^ trouvera uniquement mobile précédé par un astérisque.
  - les recherches de chaînes exactes peuvent ignorer les majuscules, les accents, etc. Pour cela, vous pouvez spécifier un jeu d’options entre accolades, après le premier accent circonflexe (par exemple, ^{cd}“jérôme”^ ignorera les majuscules et les accents, et donc trouvera “Jerome” ou “JÉRÔME”, mais ça ne trouvera pas «jérôme» qui utilise un autre type de guillemets).
    - majuscules: l’option c permet d’ignorer les majuscules ; ^{c}jérôme^ trouvera aussi JÉRÔME.
    - diacritiques: l’option d ou a permet d’ignorer les diacritiques (accents) ; ^{d}jérôme^ trouvera aussi jerome.
    - ponctuation: l’option p permet d’ignorer tous les caractères de ponctuation ; ^{p}vert orange rouge^ trouvera aussi vert, orange, rouge.
    - blancs: l’option b permet d’ignorer tous les caractères blancs, comme les espaces, tabulations, sauts de ligne, et autres caractères de contrôle ; ^{b}vert orange rouge^ trouvera aussi vert orange rouge. En revanche, notez qu’ignorer les blancs (ou la ponctuation, ou les marques et symboles) ne permet pas de fusionner ou scinder des mots ; par exemple, ^{b}ré ouvrir^ ne trouvera pas réouvrir, et ^{bp}réouvrir^ ne trouvera ni ré ouvrir ni ré-ouvrir. Cependant ^{bp}ré ouvrir^ trouvera aussi bien ré ouvrir que ré-ouvrir.
    - marques et symboles: l’option m ou s permet d’ignorer tous les caractères de marque ou symbole (tels que définis par le standard Unicode) ; ^{s}prix $2000^ trouvera aussi prix ©2000 ou prix 2000.
    - composition: l’option k permet d’ignorer toutes les différences de composition de caractère ; ^{k}oeuf…^ trouvera aussi œuf...
  - si la chaîne exacte que vous voulez chercher commence par une accolade, vous devez alors spécifier une liste (éventuellement vide) d’options, par exemple ^{}{NULL}^ trouvera {NULL} ; notez que ^{NULL}^ est une chaîne de recherche invalide.
- Expressions rationnelles (aussi appelées « expressions régulières », « regex » ou « grep »)
  - note: les recherches d’expressions rationnelles peuvent être complexes. Ainsi, vous ne pouvez les utiliser qu’en complément d’autres critères, pour réduire le nombre de résultats possibles.
  - les chaînes incluses entre des accents graves (`) sont recherchées en tant qu’expressions rationnelles.
  - voici quelques exemples:
    - martin `(?i)[\w\.-]+@[\da-z\.-]+\.[a-z]{2,6}` trouvera les documents contenant à la fois martin et une adresse email.
    - martin `\b\d+/\d+/\d+\b` trouvera les documents contenant à la fois martin et une date au format flexible, avec n'importe quel nombre de chiffres (\b positionne la recherche à une limite de mot).
    - martin `\b\d\d/\d\d/\d\d\d\d\b` cherche un format de date plus strict (mm/jj/aaaa or jj/mm/aaaa).
    - martin `\b\d?\d/\d?\d/(\d\d)?\d\d\b` cherche un format de date avec 1 ou 2 chiffres pour le jour et le mois, et 2 ou 4 chiffres pour l’année ({m}m/{j}j/{aa}aa ou {j}j/{m}m/{aa}aa).
    - martin `\b((\d?\d/(0?[7-9]|1[0-2])/(20)?13)|(\d?\d/0?[1-6]/(20)?14))\b` cherche une plage de dates (entre {j}j/{0}7/{20}13 et {j}j/{0}6/{20}14).
  - les expressions rationnelles sont sensibles à la casse ; préfixez-les avec (?i) pour les rendre insensibles à la casse.
  - le caractère point (.) correspond à n’importe quel caractère, sauf les fins de ligne. Pour correspondre à n’importe quel caractère y compris les fins de ligne, préfixez l’expression avec (?s).
  - \w et \d correspondent à n’importe quel caractère ASCII alphanumérique ou numérique, respectivement. Pour correspondre à n’importe quel caractère Unicode alphanumérique ou numérique, préfixez l’expression avec (*UCP).
  - FoxTrot utilise PCRE2 pour les recherches d’expressions rationnelles. Pour plus d’informations : regular-expressions.info, rexegg.com, PCRE syntax, PCRE2 pattern, regex101.com, regextester.com.

Vous pouvez combiner plusieurs caractères spéciaux dans la même requête. Voici quelques exemples :

- "lucien dupont" "martin dupuis" trouvera lucien dupont rencontre martin dupuis, mais ne trouvera pas lucien dupuis rencontre martin dupont
- restaurant chinois | vietnamien | coréen marseille | paris | "clermont ferrand" trouvera un restaurant chinois à paris ou bien un restaurant vietnamien près de clermont ferrand. Notez que l’opérateur | est prioritaire, c’est à dire que cette requête est évaluée comme restaurant ( chinois | vietnamien | coréen ) ( marseille | paris | "clermont ferrand" ).
- fox* -fox -foxtrot trouvera tous les documents contenant un mot qui commence par fox mais sans aucune occurrence de fox (en tant que mot entier) ni foxtrot.
- *terre* -*terre trouvera tous les documents contenant un mot contenant terre, mais sans aucun mot se terminant par terre. Par exemple, cela peut trouver un document contenant terrées ou bien atterrées, mais cela n’en trouvera pas qui contienne parterre.
- "www.ctmdev.com" (ou bien "www ctmdev com") trouvera www.ctmdev.com (aussi bien que www ctmdev com ou www+ctmdev/com). Notez qu’un point à l’intérieur d’un mot est considéré comme un séparateur de mots, ainsi www.ctmdev.com (sans guillemet) trouvera aussi informations sur ctmdev sur www.ailleurs.com.
- "match télé*" "clermont ferrand" -foot* trouvera tous les documents qui contiennent match télé ou bien match télévisé, qui contiennent également clermont ferrand, mais qui ne contiennent ni foot ni football.
- "-pierre dupont" | "-jean pierre dupont" trouvera les documents qui contiennent dupont (mais en ignorant pierre dupont) ou qui contiennent pierre dupont (mais en ignorant jean pierre dupont) ; en d’autres termes, cela trouvera toutes les occurrences de dupont (mais en ignorant jean pierre dupont)

Texte asiatique : les chaînes de caractères chinoises, japonaises ou coréennes sont cherchées en tant que séquences exactes de caractères, sauf si elles contiennent des espaces (ou d’autres caractères de ponctuation) pour délimiter les groupes de caractères. Par exemple, chercher 田中です trouvera uniquement cette chaîne exacte, tandis que chercher 田中　です trouvera également 田中はこの人です.