Veel zoektermen krijgen een tekenreeks mee als parameter en vergelijken die
met een of meer pakketvelden. Tekenreeksen kunnen zowel met als zonder
aanhalingstekens (“"
”) opgegeven worden,
zodat“
” en
“?name
(scorch)
” eenzelfde zoekbewerking
zullen uitvoeren. Indien u een zoekterm opgeeft met dubbele
aanhalingstekens, kunt u in de zoekterm zelf een dubbel aanhalingsteken
opnemen door vlak ervoor een backslash (“?name
("scorch")\
”)
te plaatsen: bijvoorbeeld, het resultaat van
“
” zal zijn: alle
pakketten waarvan de beschrijving de tekenreeks
“?description
("\"easy\"")"easy"
” bevat.
Indien u een “kale” tekenreeks opgeeft, een waarrond geen
dubbele aanhalingstekens staan, dan zal aptitude de tekenreeks als
“beëindigd” beschouwen als het bij het afsluitende haakje
aankomt of aan de komma die voorafgaat aan het tweede argument bij de
zoekterm. [14] Om de bijzondere betekenis
van die tekens te neutraliseren, moet u vlak ervoor een tilde
(“~
”) plaatsen. Bijvoorbeeld,
“
” is een fout tegen de
syntaxis, omdat het eerste “?description
(etc)))
” de term van
het type ?description
afsluit en het tweede
“)
” geen enkel corresponderend
“(
” heeft. Daarentegen levert
“
” een overeenkomst op
met elk pakket waarvan de beschrijving de tekst
“?description
(etc~))etc)
” bevat. U moet extra zorgvuldig zijn
als u de verkorte notatie voor een term gebruikt. Zie de paragraaf met de naam “Verkorte notatie voor zoektermen” voor details.
De meeste tekstuele zoekopdrachten (naar pakketnamen, beschrijvingen enz.)
gebeuren aan de hand van hoofdletterongevoelige reguliere
expressies. Er is een overeenkomst tussen de reguliere expressie en
een veld als een gedeelte van dat veld beantwoordt aan de reguliere
expressie. Bijvoorbeeld, “ogg[0-9]
” komt
overeen met “libogg5
”,
“ogg123
” en
“theogg4u
”. Sommige lettertekens hebben
binnen een reguliere expressie een speciale betekenis [15]. Dus, indien u ze wilt gebruiken in zoekopdrachten
moet u een backslash als stuurcode (escape) gebruiken. Bijvoorbeeld, om te
zoeken naar “g++
”, moet u het patroon
“g\+\+
” gebruiken.
De tekens “!
” en
“|
” hebben in zoekpatronen een speciale
betekenis. Om deze tekens te gebruiken in een tekenreeks die niet door
aanhalingstekens begrensd wordt, kunt u vlak ervoor een tilde
(“~
”) plaatsen. Bijvoorbeeld, om pakketten
te vinden waarvan de beschrijving ofwel “groot” of
“schuin” bevat, moet u het patroon
“
”
gebruiken. Maar wellicht zult u het comfortabeler vinden om in dergelijke
gevallen gewoon een tekenreeks tussen aanhalingstekens te gebruiken:
“?description
(groot~|schuin)
”.
?description
("groot|schuin")
[14]
aptitude zal een komma enkel als een speciaal teken interpreteren als er
een tweede argument opgegeven is, zodat (bijvoorbeeld)
“
” zal zoeken naar de
tekenreeks “?name
(apt,itude)apt,itude
” in het veld
Naam
van de pakketten.
Hoewel dit gedrag duidelijk omschreven is, kan het toch tot verrassingen leiden. Ik beveel aan om tekenreeksen tussen aanhalingstekens te gebruiken voor elk patroon dat lettertekens bevat die een speciale betekenis kunnen hebben.
[15]
De lettertekens met een bijzondere betekenis zijn:
“+
”, “-
”,
“.
”, “(
”,
“)
”, “|
”,
“[
”, “]
”,
“^
”, “$
”, en
“?
”. Merk op dat sommige daarvan ook
metatekens voor aptitude zijn. Indien u dus (bijvoorbeeld) een letterlijke
“|
” wenst te typen, moet u een dubbele
stuurcode (escape) gebruiken:
“
” zal een overeenkomst
opleveren met pakketten waarvan de beschrijving het letterteken verticaal
streepje (“?description
(\~|)|
”) bevat.