Ich bin neu bei Solr. Beim Lesen von Solrs Wiki verstehe ich die Unterschiede zwischen WhitespaceTokenizerFactory und StandardTokenizerFactory nicht. Was ist ihr wirklicher Unterschied?Unterschied zwischen WhitespaceTokenizerFactory und StandardTokenizerFactory
6
A
Antwort
23
Sie unterscheiden sich darin, wie sie den analysierten Text in Token aufteilen.
Die StandardTokenizer tut dies auf der Grundlage der folgenden (aus lucene javadoc genommen):
- Splits Wörter auf Satzzeichen, Zeichensetzung zu entfernen. Ein Punkt, auf den kein Leerzeichen folgt, wird jedoch als Teil eines Tokens betrachtet.
- Splits Worte Bindestriche, es sei denn, es gibt eine Zahl im Token, wobei in diesem Fall die gesamte Token als Produkt Nummer interpretiert und aufgespalten wird nicht.
- Erkennt E-Mail-Adressen und Internet Hostnamen als ein Token.
Die WhitespaceTokenizer tut dies basierend auf Leerzeichen:
WhitespaceTokenizer A ist ein tokenizer, den Text in Leerzeichen unterteilt. Benachbarte Sequenzen von Nicht-Whitespace-Zeichen bilden Token.
Sie sollten den Tokenizer auswählen, der am besten zu Ihrer Anwendung passt. In jedem Fall müssen Sie den gleichen Analyzer/Tokenizer zum Indexieren und Suchen verwenden!
Verwandte Themen
- 1. Unterschied zwischen Vorzeichen & und *?
- 2. VBA: Unterschied zwischen & und +
- 3. Unterschied zwischen "**/* /" und "** /"?
- 4. Unterschied zwischen $ # und $ {# @}
- 5. Unterschied zwischen = und: =
- 6. Unterschied zwischen '#', '%' und '$'
- 7. MySQL: Unterschied zwischen ', `,' und '
- 8. C++ Unterschied zwischen '//' und '///'
- 9. Unterschied zwischen String.Empty und ""
- 10. Unterschied zwischen `% in%` und `==`
- 11. Unterschied zwischen numpy.logical_and und &
- 12. Unterschied zwischen. und #
- 13. Unterschied zwischen // und http: //
- 14. Unterschied zwischen -Wconversion zwischen gcc und g ++
- 15. Unterschied zwischen Wörterbuch und Hashtable
- 16. Unterschied zwischen FetchMode und FetchType
- 17. Unterschied zwischen Application_Start und Application_OnStart
- 18. Unterschied zwischen Uint8Array und Uint8ClampedArray
- 19. Unterschied zwischen BOOST_CHECK_CLOSE und BOOST_CHECK_CLOSE_FRACTION?
- 20. Unterschied zwischen Suche und Index
- 21. Unterschied zwischen AJAX und Senden
- 22. Unterschied zwischen Spekulation und Vorhersage
- 23. Unterschied zwischen inproc und outproc
- 24. Unterschied zwischen Clojure und Clojurescript?
- 25. Unterschied zwischen NSArray und NSMutableArray
- 26. Unterschied zwischen libcurl und libsoup
- 27. Unterschied zwischen DirectoryCatalog und AssemblyCatalog
- 28. Unterschied zwischen * y ++ und ++ * y?
- 29. Unterschied zwischen SwingWorker und SwingUtilities.invokeLater
- 30. Unterschied zwischen String.scan und String.split
Danke csupnig! Wenn Sie sagen "Verwenden Sie den gleichen Analyzer/Tokenizer" für den Index und die Suche, meinten Sie, der Analysator muss mit dem Typ des Tokenizers übereinstimmen, der verwendet wird, ich richtig? – trillions
Ja, sie sollten das gleiche tun, um ähnliche Tokens zu erzeugen. Es gibt nur wenige Fälle, in denen Sie im Abfrageparser andere Tokenizer als die Tokenizer verwenden möchten, die Sie beim Indexieren verwendet haben. – csupnig
Danke csupnig :) – trillions