Page 1 sur 1

[Issue][Writer] SearchSimilarity dysfonctionne avec espace

MessagePublié: 18 Mai 2020 00:17
par jeanmi2403
Bonsoir,
Pour un projet de recherche dans des textes, bien avancé, j'ai créé le code suivant, qui fonctionne très bien :
Code : Tout sélectionner   AgrandirRéduire
oDoc = thiscomponent
oSearch = oDoc.createSearchDescriptor()

with oSearch
   .SearchString = "passages du Lorem"
   .SearchRegularExpression =false
   .SearchCaseSensitive = false
   .SearchSimilarity = true
   .SearchWords = true
'   .SearchSimilarityRelax = true
   .SearchSimilarityAdd = 2
   .SearchSimilarityRemove =2
end with

oResult = oDoc.findFirst(oSearch)

J'ai été intéressé par le paramètre SearchSimilarity = true qui permet à l'utilisateur de rater un ou deux caractères, voire de trouver le mot dans un texte avec des fautes :D
Ça fonctionne parfaitement avec des mots mais ça ne fonctionne plus avec des expressions contenant des espaces comme décrit ci-dessus.
Serait-ce un bogue, ou une fonctionnalité ?
Cordialement,

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 18 Mai 2020 02:18
par OOotremer971
Bonjour,

Code : Tout sélectionner   AgrandirRéduire
.SearchWords = true

SearchWords.png
SearchWords.png (6.84 Kio) Consulté 323 fois

https://www.openoffice.org/api/docs/common/ref/com/sun/star/util/SearchDescriptor.html

Je n'ai pas testé mais logiquement si ce paramètre est à True il ne peux pas être compatible avec une recherche de similarité contenant des espaces puisqu'un mot ne contient pas d'espace. En d'autres termes, il faut passer à false SearchWords pour qu'une recherche de similarité contenant des espaces soit possible.

Enfin j'espère que c'est vrai

A+

 Ajout : :cry: apparemment cela ne fonctionne pas y compris en passant par l'interface graphique. D'ailleurs lorsque recherche de similarité est cochée, si l'expression recherchée contient une espace, le dialogue affiche : terme recherché introuvable

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 18 Mai 2020 07:58
par Dude
Salut,

Fais un Split sur la chaîne recherchée et une boucle sur chaque mot récupéré.

jeanmi2403 a écrit:Pour un projet de recherche dans des textes

Attention au temps de traitement s'il s'agit en plus de chercher dans plusieurs documents.

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 18 Mai 2020 10:41
par jeanmi2403
Bonjour,
Oootremer971 a écrit:Je n'ai pas testé mais logiquement si ce paramètre est à True il ne peut pas être compatible avec une recherche de similarité

Le listing représente le dernier de mes essais, car, tu penses bien que j'ai testé toutes les combinaisons possibles...
Dude a écrit:Fais un Split sur la chaîne recherchée et une boucle sur chaque mot récupéré.

C'est ce que j'aurais fais si j'en avais eu un besoin impératif. En fait la "cliente" ne m'en a pas demandé autant, je vais lui rajouter dans l'interface la fonctionnalité pour la recherche de mot uniquement.
Effectivement ça pourrait être un peu long, vu qu'il peut y a voir une petite centaine de fichiers à fouiller.

En tout cas, j'ai déposé un rapport de bogue, on verra bien ce que ça donne, mais je n'y crois pas beaucoup, vu que ça fonctionne de la même manière sur Aoo.

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 22 Mai 2020 22:01
par jeanmi2403
Bonsoir,
Du nouveau sur le sujet, j'ai eu une réponse de <oooforum@free.fr> après le signalement de bogue sur Bugzilla pour OpenOffice.
Selon la personne qui m'a répondu, ce n'est pas un bogue, car l' exemple listé dans la documentation ne propose pas de chercher sur un phrase...
Un peu léger comme justification...

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 26 Mai 2020 21:10
par Dude
As-tu fait le test avec le dialogue de l'interface ?

La documentation ne précise rien à ce sujet :
https://wiki.openoffice.org/wiki/FR/Doc ... mplacement
Nul doute qu'il faudrait améliorer ce point en ajoutant cette information.

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 30 Mai 2020 16:06
par jeanmi2403
Bonjour,
Dude a écrit:As-tu fait le test avec le dialogue de l'interface ?

Oui, et OOoTremer971 également un peu plus haut dans ce fil.
Je n'avais pas bien cherché, mais :
C'est un bogue décrit sur Bugzilla OpenOffice et également un bogue référencé sur LibreOffice.
Il est donc assez logique que si ça ne fonctionne pas dans l'interface, ça ne fonctionne pas non plus par macro.
Il ne me reste pus qu'à baliser ça comme une issue...
Bon week end,

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 02 Juin 2020 10:08
par Dude
jeanmi2403 a écrit:C'est un bogue décrit sur Bugzilla

Le rapport n'a pas été classé comme bogue mais comme amélioration.
Mais pour moi, je ne vois pas comment on pourrait rechercher des similarités sur une phrase.
Cela n'a pas de sens.

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 02 Juin 2020 11:27
par jeanmi2403
Bonjour,
Dude a écrit:Mais pour moi, je ne vois pas comment on pourrait rechercher des similarités sur une phrase.
Cela n'a pas de sens.

Eh bien, pour certains, cela semble logique, pour trouver des extraits de phrases avec une faute d'orthographe, un verbe conjugué où à l'infinitif, etc..
Cela dit, je suis d'accord pour dire que Writer n'est pas forcément le bon outil pour les études lexicographiques.
Cordialement,

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 02 Juin 2020 13:16
par CanadaDry
Hello,

jeanmi2403 a écrit:pour trouver des extraits de phrases avec une faute d'orthographe, un verbe conjugué où à l'infinitif, etc.

Utilise Grammalecte :)

Re: [Writer] SearchSimilarity ne fonctionne pas avec espaces

MessagePublié: 04 Juin 2020 12:55
par jeanmi2403
Bonjour,
CanadaDry a écrit:
jeanmi2403 a écrit:pour trouver des extraits de phrases avec une faute d'orthographe, un verbe conjugué où à l'infinitif, etc.

Utilise Grammalecte :)


Si ce n'est pas de l'humour(médiocre, à mon sens), je ne vois pas Grammalecte faire autre chose que de la correction orthographique, et sûrement pas de la recherche lexicographique.
Ou alors quelque chose m'aurait échappé ?
Bonne journée,