De nombreux termes de recherche peuvent prendre une chaîne de caractères
comme paramètre et la faire correspondre avec un ou plusieurs champs d'un
paquet. Les chaînes peuvent être ou non données entre guillemets
(« "
»), de sorte que
«
» et
« ?name
(scorch)
» effectueront la même
recherche. Si vous entrez une chaîne de recherche avec des guillemets, vous
pouvez inclure le caractère guillemet dans la chaîne en le faisant précéder
par une barre oblique inverse (« ?name
("scorch")\
») : par
exemple, «
»
sélectionnera tous les paquets dont la description contient la chaîne
« ?description
("\"easy\"")"easy"
».
Si vous entrez une chaîne « nue », c'est-à-dire sans guillemets,
alors aptitude considérera que la chaîne sera terminée lorsqu'il
rencontrera une parenthèse fermante ou la virgule précédant le second
argument du terme de recherche[14]. Pour
retirer la signification particulière à ces caractères, faites-les précéder
d'un tilde (« ~
»). Par exemple
«
» est une erreur de
syntaxe, car la première parenthèse fermante
« ?description
(etc)))
» termine le terme ?description
et la
deuxième ne correspond à aucune parenthèse ouvrante. En revanche,
«
» sélectionne tous les
paquets dont la description contient le texte
« ?description
(etc~))etc)
». Il y a des considérations
supplémentaires si vous utilisez la forme courte d'un terme. Consultez la section intitulée « Raccourcis pour les termes de recherche » pour les détails.
La plupart des recherches de texte (pour les noms de paquets, les
descriptions, etc.) sont des expressions
rationnelles insensibles à la casse. Une expression rationnelle sera
en correspondance avec un champ dès que n'importe quelle portion du texte
correspond à l'expression rationnelle. Par exemple,
« ogg[0-9]
» sera en correspondance avec
« libogg5
»,
« ogg123
» et
« theogg4u
». Certains caractères ont une
signification particulière à l'intérieur d'une expression rationnelle
[15], donc si vous voulez les utiliser dans
des recherches, vous devez les protéger avec une barre oblique inverse : par
exemple, pour trouver « g++
», vous devrez
utiliser le motif « g\+\+
».
Les caractères « !
» et
« |
» ont une signification particulière à
l'intérieur des motifs de recherche. Afin d'inclure ces caractères dans une
chaîne sans guillemets, vous pouvez les faire précéder par un tilde
(« ~
»). Par exemple, pour faire correspondre
les paquets dont la description contient « grand » ou
« oblique », utilisez le motif
«
». Vous
trouverez cependant plus pratique peut-être d'utiliser simplement une chaîne
de caractères entre guillemets :
« ?description
(grand~|oblique)
».
?description
("grand|oblique")
[14]
aptitude ne traitera la virgule comme un caractère spécial qu'en cas de
présence d'un deuxième argument, donc (par exemple)
«
» cherche la chaîne
« ?name
(apt,itude)apt,itude
» dans le champ du nom
(« Name
») des paquets.
Bien que ce comportement soit bien défini, il peut surprendre. Il est recommandé d'utiliser des chaînes entre guillemets pour tous les motifs qui contiennent des caractères qui pourraient avoir un sens particulier.
[15]
Les caractères avec une signification particulière sont :
« +
», « -
»,
« .
», « (
»,
« )
», « |
»,
« [
», « ]
»,
« ^
», « $
» et
« ?
». Remarquez que certains de ceux-ci sont
aussi des caractères spéciaux d'aptitude, donc si vous voulez, par
exemple, taper un « |
» littéral, il vous
faudra le protéger deux fois :
«
» fera correspondre les
paquets dont la description contient une barre verticale
(« ?description
(\~|)|
»).