libérer: 2026/09/06 14:46 lire: 0
Auteur original:vlogommentary
Source originale:https://www.youtube.com/embed/LxCCWuwkcpw
Découvrez comment configurer un tokeniseur et un analyseur Elasticsearch pour diviser les mots camelCase ou PascalCase en jetons distincts pour une meilleure correspondance de recherche. --- Cette vidéo est basée sur la question https://stackoverflow.com/q/79457368/ posée par l'utilisateur 'dominikweber' ( https://stackoverflow.com/u/2849119/ ) et sur la réponse https://stackoverflow.com/a/79457666/ fournie par l'utilisateur 'Paulo' ( https://stackoverflow.com/u/4534923/ ) à Site Web « Débordement de pile ». Merci à ces formidables utilisateurs et à la communauté Stackexchange pour leurs contributions. Visitez ces liens pour le contenu original et plus de détails, tels que les solutions alternatives, les dernières mises à jour/développements sur le sujet, les commentaires, l'historique des révisions, etc. Par exemple, le titre original de la question était : Tokenizer qui divise les majuscules en deux mots. De plus, le contenu (sauf la musique) sous licence CC BY-SA https://meta.stackexchange.com/help/licensing La publication de la question originale est sous licence « CC BY-SA 4.0 » ( https://creativecommons.org/licenses/by-sa/4.0/ ), et le message de réponse original est sous licence « CC BY-SA 4.0 » ( https://creativecommons.org/licenses/by-sa/4.0/ ). Si quelque chose vous semble bizarre, n'hésitez pas à m'envoyer un commentaire sous cette vidéo. --- Introduction Lors de l'indexation et de la recherche de texte comme LoremIpsum dans Elasticsearch, vous souhaiterez peut-être diviser ce mot camelCase ou PascalCase en plusieurs jetons : lorem, ipsum, et également conserver le jeton loremipsum d'origine pour une correspondance plus large. Cela améliore la flexibilité de la recherche en faisant correspondre des mots partiels ou le mot entier combiné. Le problème Par défaut, Elasticsearch ne divise pas en fonction des changements de cas dans des jetons uniques. Ainsi, la recherche de Lorem ou Ipsum peut ne pas donner les correspondances attendues si le texte est indexé uniquement comme un jeton loremipsum. Présentation de la solution Nous pouvons résoudre ce problème en utilisant un analyseur personnalisé avec : le tokenizer de mot-clé (pour traiter initialement l'intégralité de l'entrée comme un seul jeton) le filtre de jeton word_delimiter configuré pour se diviser en cas de changement de casse le filtre en minuscules pour la normalisation de la casse. La clé est d'utiliser le filtre word_delimiter avec : split_on_case_change : true preserve_original : true (pour conserver le jeton complet) generate_word_parts : true Cette configuration produit tous les jetons attendus. Exemple d'analyseur et de filtre de configuration : [[Voir la vidéo pour révéler ce texte ou cet extrait de code]] Test de l'analyseur : Vous pouvez tester cet analyseur avec l'API _analyze : [[Voir la vidéo pour révéler ce texte ou cet extrait de code]] Les jetons de sortie seront : loremipsum (jeton complet d'origine) lorem (divisé en cas de changement de cas) ipsum (divisé en cas de changement de cas) Mappage de votre champ Pour utiliser cet analyseur, spécifiez-le dans votre mappage d'index pour le champs de texte : [[Voir la vidéo pour révéler ce texte ou cet extrait de code]] Utilisation de l'analyseur dans la recherche Par défaut, les requêtes utilisent l'analyseur défini dans le mappage. Cependant, vous pouvez spécifier explicitement l'analyseur lors de la recherche : [[Voir la vidéo pour révéler ce texte ou cet extrait de code]] Utilisez cette approche lorsque votre requête de recherche nécessite un comportement de tokenisation spécifique. Résumé Utilisez un tokenizer de mots-clés avec un filtre word_delimiter pour diviser camelCase. Définissez save_original: true et split_on_case_change: true pour les jetons souhaités. Définissez vos champs de texte avec cet analyseur personnalisé dans les mappages. Spécifiez éventuellement l'analyseur au moment de la recherche pour assurer la cohérence des requêtes. Cette configuration résout le problème courant de l'indexation et de la recherche de mots camelCase ou PascalCase dans Elasticsearch, donnant des résultats de recherche flexibles et précis.
Gerhard - Bitcoin Strategy
2026-09-21 01:23
Bitcoin·老墨
2026-09-21 01:23
PI News World
2026-09-21 01:23
La Villa des Cœurs Brisés - Replay
2026-09-21 01:19
Midnight Awakening
2026-09-21 01:19
Ashes Club
2026-09-21 00:57
Karauli Sarkar - Ishvariya Chikitsa Vigyan Kendra
2026-09-21 00:57
Gold rate Telugu
2026-09-21 00:57
CoinNexa VAULT.
2026-09-21 00:57
Sélectionnez la devise
US Dollar
USD
Chinese Yuan
CNY
Japanese Yen
JPY
South Korean Won
KRW
New Taiwan Dollar
TWD
Canadian Dollar
CAD
Euro
EUR
Pound Sterling
GBP
Danish Krone
DKK
Hong Kong Dollar
HKD
Australian Dollar
AUD
Brazilian Real
BRL
Swiss Franc
CHF
Chilean Peso
CLP
Czech Koruna KČ
CZK
Singapore Dollar
SGD
Indian Rupee
INR
Saudi Riyal
SAR
Vietnamese Dong
VND
Thai Baht
THB
Sélectionnez la devise
US Dollar
USD-$
Chinese Yuan
CNY-¥
Japanese Yen
JPY-¥
South Korean Won
KRW -₩
New Taiwan Dollar
TWD-NT$
Canadian Dollar
CAD-$
Euro
EUR - €
Pound Sterling
GBP-£
Danish Krone
DKK-KR
Hong Kong Dollar
HKD- $
Australian Dollar
AUD-$
Brazilian Real
BRL -R$
Swiss Franc
CHF -FR
Chilean Peso
CLP-$
Czech Koruna KČ
CZK -KČ
Singapore Dollar
SGD-S$
Indian Rupee
INR -₹
Saudi Riyal
SAR -SAR
Vietnamese Dong
VND-₫
Thai Baht
THB -฿