|
From: | Pierrick Brihaye |
Subject: | Re: [sdx-users] affichage alphabétique d'un e liste de terme sur un champ |
Date: | Wed, 22 Jun 2005 18:56:17 +0200 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; fr-FR; rv:1.7) Gecko/20040608 |
Salut, Frédéric Glorieux a écrit :
J'ai testé ceci ligne 231 - re = getRE(str); + re = getRE(str.toLowerCase()); ligne 251 - if (re.match(text)) { + if (re.match(text.toLowerCase())) {a*, comme A* donne tous les termes commençant par a* et A*. Il ne faut pas vouloir faire de distinctions de casse dans ses termes.
Mmmh... je suis en train de me bagarrer là-dessus avec les développeurs d'eXist :-)) Ma religion est faite : pourquoi faire porter à du code qui se veut générique une politique d'indexation qui ne sert pas les objectifs de la politique de requête ?
Attention, je ne sais pas ce que cela donne avec de l'arabe ou autres langues pour laquelle toLowerCase() n'est pas précisément implémenté.
C'est implémenté ne serait-ce que parce que que c'est du Java standard. Mais en arabe... c'est kif-kif :-)
des numéros commencent par ~, parce que ma copie de travail est modifiée pour prendre en charge des choses commew* x* y* z* (les quatre dernières lettres d'un coup), tout aussi bien que "terme avec espace" termeAutrement dit faire que l'espace soit un "ou" implicite, comme dans le langage de requête Lucene.
C'est une idée, mais, d'une façon plus générale, il faudrait offrir les mêmes possibilités que l'on a pour les requêtes (et, ou, sauf à partir d'une "baseQuery"). De plus, ne pas oublier que, pour les champs non tokenisés, l'espace *peut* être significative : "cul de sac" peut représenter un seul token...
A+ p.b.
[Prev in Thread] | Current Thread | [Next in Thread] |