J'utilise solr, j'utilise StandardTokenizerFactory dans le champ de texte, mais je ne veux pas diviser sur le trait de soulignement. Dois-je utiliser un autre toknizer comme PatternTokenizerFactory ou je peux le faire avec StandardTokenizerFactory? car j'ai besoin de la même fonctionnalité de StandardTokenizerFactory mais sans split sur underscore.Ne pas diviser sur le trait de soulignement avec solr.StandardTokenizerFactory
3
A
Répondre
2
Je ne pense pas que vous pouvez le faire dans StandardTokenizerFactory. Une solution consiste à remplacer les caractères de soulignement par quelque chose que StandardTokenizerFactory ne traitera pas et que vos documents ne contiendront pas. Par exemple, vous pouvez d'abord remplacer _
par QQ
partout avec PatternReplaceCharFilterFactory et passer par StandardTokenizerFactory, puis remplacer QQ
par _
en utilisant PatternReplaceFilterFactory. Voici la définition de fieldType de le faire:
<fieldType name="text_std_prot" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="_"
replacement="QQ"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.PatternReplaceFilterFactory"
pattern="QQ"
replacement="_"/>
...
</analyzer>
</fieldType>
Et voici une capture d'écran de ce qui se passe:
0
Ajout juste après semble faire affaire pour StandardTokenizerFactory comme StandardTokenizerFactory se divise au trait d'union " - ".
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="_"
replacement="-"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
Questions connexes
- 1. preg_replace ne pas remplacer le trait de soulignement
- 2. Utilisez alphanumérique avec avec trait d'union et trait de soulignement
- 3. problème de regex de python avec le trait de soulignement
- 4. contenu: le remplacement d'un espace avec un trait de soulignement
- 5. Pourquoi double trait de soulignement (__) en PHP?
- 6. Comment aligner horizontalement le trait de soulignement sans le répéter?
- 7. remplacer le numéro après le trait de soulignement
- 8. L'API Google Spreadsheets supprime le trait de soulignement
- 9. PartialView() ne retourne pas une vue avec un trait de soulignement
- 10. Javascript remplace le texte après un trait de soulignement
- 11. Remplir les espaces de tableau avec un trait de soulignement
- 12. Gulp exclure le dossier contenant un trait de soulignement ('_')
- 13. Fonctions Dojo avec trait de soulignement à l'avant
- 14. Le schéma d'URL de mai contient un trait de soulignement?
- 15. comment enlever le trait de soulignement des valeurs de textarea?
- 16. puis-je remplacer tout après le trait de soulignement?
- 17. Utiliser le trait de soulignement (_) dans l'alias du menu joomla
- 18. Que signifie le trait de soulignement en nombre littéral?
- 19. Pourquoi le symbole de la fonction SHA512 dans libeay32 n'a pas de trait de soulignement?
- 20. Les conventions de nommage de Resharper trébuchent sur le trait de soulignement?
- 21. L'inflexion Rails du trait de soulignement 'underscoreize' est-elle correcte?
- 22. Remplacer la séquence de points par un trait de soulignement
- 23. Regex qui correspond à tout avant un trait de soulignement
- 24. Qu'est-ce qu'un double trait de soulignement dans Perl?
- 25. Renommez plusieurs tables MySQL en insérant un trait de soulignement
- 26. Quelle est la signification d'un trait de soulignement dans Perl ($ _, @_)?
- 27. mettre un trait de soulignement à sa place
- 28. La vidéo incorporée avec un caractère de soulignement dans ID youtube ne fonctionne pas sur iPhone
- 29. Notation concise pour une fonction anonyme simple arg (évitant le trait de soulignement) ne fonctionne pas comme prévu
- 30. Comment supprimer le trait de soulignement ('_') avec les chiffres précédents dans les premières colonnes seulement