J'ai l'impression qu'il n'y aurait pas grand chose à faire
http://savannah.nongnu.org/cgi-bin/viewcvs/sdx/sdx_v2/src/java/fr/gouv/culture/sdx/search/lucene/query/Terms.java?rev=HEAD&content-type=text/vnd.viewcvs-markup
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.
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é.
Même logique plus bas (pour filtrages imbriqués)
ligne ~802
- RE re = getRE(pattern);
+ RE re = getRE(pattern.toLowerCase());
ligne ~809
- if (ts.term() != null && re != null && re.match(ts.term().text())) {
+ if (ts.term() != null && re != null &&
re.match(ts.term().text().toLowerCase())) {
des numéros commencent par ~, parce que ma copie de travail est modifiée
pour prendre en charge des choses comme
w* x* y* z* (les quatre dernières lettres d'un coup),
tout aussi bien que
"terme avec espace" terme
Autrement dit faire que l'espace soit un "ou" implicite, comme dans le
langage de requête Lucene.
J'ai une appli où cela peut me servir, mais il faudrait voir avec les
utilisateurs si cela ne perturberait pas d'autres applis avant de
commiter sur SDX.
--
Frédéric Glorieux ("AJLSM", <http://ajlsm.com>)
_______________________________________________
sdx-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/sdx-users