Nous avons déjà brièvement évoqué la question de la segmentation des zones de recherche. La segmentation en unités implique essentiellement la séparation de données indexées en unités appelées chaînes de caractères. Cette opération est effectuée par un analyseur. Différents analyseurs se comportent différemment, certains séparent les chaînes de caractères en fonction des blancs, d'autres en fonction de la ponctuation, etc. Les chaînes de caractères produites sont également souvent converties en minuscules. Pour les zones segmentées, les chaînes de requête sont segmentées de la même manière. De la sorte, les recherches ne sont, entre autres avantages, pas sensibles à la casse.
Pour certaines zones, la segmentation n'a aucun intérêt. Les valeurs générées par ordinateur, comme les codes des tables de codes, en sont un bon exemple. Toutefois, la plupart des zones doivent généralement être segmentées. Plus spécifiquement, le comportement de zones et de recherches sans jeton à plusieurs mots n'est pas intuitif. Si vous découvrez que vos recherches ne renvoient pas les données attendues, vérifiez que ce ne soit pas le cas.
Par exemple : prenez une zone adresse, avec un document contenant "Joyce Way Parkwest Dublin". S'il s'agissait d'une zone segmentée avec l'analyseur standard, l'index contiendrait quatre termes : joyce, way, parkwest et dublin. Toute chaîne de requête qui contient des termes correspondant à ces termes (exactement ou par le biais d'un caractère générique) trouvera ce document. Par exemple : "Dublin", "Joyce Way", "park*", etc.
Toutefois, si cette zone n'est pas segmentée et que le même document est ajouté, l'index contiendra un seul terme : "Joyce Way Parkwest Dublin". Beaucoup moins de chaînes de requête y correspondront, essentiellement la chaîne elle-même ou la première partie de la chaîne comme préfixe de recherche. La recherche sera également sensible à la casse.