Commentçamarche.net
CodeS-SourceS
Rechercher un code, un tuto, une réponse

Dictionnaire de rimes

5/5 (14 avis)

Vue 65 118 fois - Téléchargée 1 107 fois

Description

L'utilisation de ce script est d'une simplicité élémentaire.
Par exemple, pour trouver les mots rimant avec "élémentaire", on tape "taire", et on obtient des résultats comme :
altère, déblatères, panthère, périanthaire, sectaire, terre, waters, zoanthaires, éthers, etc...
Si l'on désire une rime moins riche, on tape alors "aire", mais on pourrait tout aussi bien taper "ert" (comme "concert").

Vous l'aurez compris, ce script repose sur la phonétique.

Le système de codage des phonèmes utilisé est celui du logiciel de TTS (Text To Speach) MBROLA.
Les règles de phonétisation sont consignées dans la base de connaissance du fichier "rules.xml", qu'exploite la fonction "phonetize()" du script, à l'origine écrite en PERL par David HAUBENSACK :
http://tcts.fpms.ac.be/synthesis/mbrola/tts/French/perl_tts.zip

Le dictionnaire, d'un "poids" de 100000 mots répartis sur 4 fichiers, est phonétisé et trié à l'avance (et les transcriptions écrites à l'envers!), afin d'optimiser les temps de recherches; seule en fait la syllabe dont on désire les rimes est phonétisée lors de l'exécution du script.

Bien entendu, il arrive au script de se tromper, ou d'oublier des mots : l'erreur souvent est dûe à la base de connaissance qui, malgré ses 303 règles, peut avoir négligé certaines combinaisons, mais aussi, et tout le monde le sait, la langue française est une langue comportant davantage d'exceptions que de règles!
Si l'on reprend l'exemple du début avec "aire", on ne trouvera pas le mot "nerf", pourtant correct...

La démo :
http://michel.vanthodiep.free.fr/dico/

Source / Exemple :


voir->zip

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.