基本格式如下所示

  1. PUT /my-index/_settings
  2. {
  3. "index": {
  4. "analysis": {
  5. "analyzer": {
  6. "customHTMLSnowball": {
  7. "type": "custom",
  8. "char_filter": [
  9. "html_strip"
  10. ],
  11. "tokenizer": "standard",
  12. "filter": [
  13. "lowercase",
  14. "stop",
  15. "snowball"
  16. ]
  17. }}}}}

案例 1

  1. {
  2. "settings": {
  3. "refresh_interval": "5s",
  4. "number_of_shards": 1,
  5. "number_of_replicas": 1,
  6. "analysis": {
  7. "filter": {
  8. "edge_ngram_filter": {
  9. "type": "edge_ngram",
  10. "min_gram": 1,
  11. "max_gram": 50
  12. },
  13. "pinyin_simple_filter": {
  14. "type": "pinyin",
  15. "keep_first_letter": true,
  16. "keep_separate_first_letter": false,
  17. "keep_full_pinyin": false,
  18. "keep_original": false,
  19. "limit_first_letter_length": 50,
  20. "lowercase": true
  21. },
  22. "pinyin_full_filter": {
  23. "type": "pinyin",
  24. "keep_first_letter": false,
  25. "keep_separate_first_letter": false,
  26. "keep_full_pinyin": true,
  27. "none_chinese_pinyin_tokenize": true,
  28. "keep_original": false,
  29. "limit_first_letter_length": 50,
  30. "lowercase": true
  31. },
  32. "t2s_convert": {
  33. "type": "stconvert",
  34. "delimiter": ",",
  35. "convert_type": "t2s"
  36. }
  37. },
  38. "char_filter": {
  39. "charconvert": {
  40. "type": "mapping",
  41. "mappings_path": "char_filter_text.txt"
  42. }
  43. },
  44. "tokenizer": {
  45. "ik_smart": {
  46. "type": "ik",
  47. "use_smart": true
  48. }
  49. },
  50. "analyzer": {
  51. "ngramIndexAnalyzer": {
  52. "type": "custom",
  53. "tokenizer": "keyword",
  54. "filter": [
  55. "edge_ngram_filter",
  56. "lowercase"
  57. ],
  58. "char_filter": [
  59. "charconvert"
  60. ]
  61. },
  62. "ngramSearchAnalyzer": {
  63. "type": "custom",
  64. "tokenizer": "keyword",
  65. "filter": [
  66. "lowercase"
  67. ],
  68. "char_filter": [
  69. "charconvert"
  70. ]
  71. },
  72. "ikIndexAnalyzer": {
  73. "type": "custom",
  74. "tokenizer": "ik",
  75. "char_filter": [
  76. "charconvert"
  77. ]
  78. },
  79. "ikSearchAnalyzer": {
  80. "type": "custom",
  81. "tokenizer": "ik",
  82. "char_filter": [
  83. "charconvert"
  84. ]
  85. },
  86. "pinyiSimpleIndexAnalyzer": {
  87. "tokenizer": "keyword",
  88. "filter": [
  89. "pinyin_simple_filter",
  90. "edge_ngram_filter",
  91. "lowercase"
  92. ]
  93. },
  94. "pinyiSimpleSearchAnalyzer": {
  95. "tokenizer": "keyword",
  96. "filter": [
  97. "pinyin_simple_filter",
  98. "lowercase"
  99. ]
  100. },
  101. "pinyiFullIndexAnalyzer": {
  102. "tokenizer": "keyword",
  103. "filter": [
  104. "pinyin_full_filter",
  105. "lowercase"
  106. ]
  107. },
  108. "pinyiFullSearchAnalyzer": {
  109. "tokenizer": "keyword",
  110. "filter": [
  111. "pinyin_full_filter",
  112. "lowercase"
  113. ]
  114. }
  115. }
  116. }
  117. }
  118. }

案例 2

  1. {
  2. "settings":{
  3. "analysis":{
  4. "analyzer":{
  5. "myanalyzer":{
  6. "tokenizer":"mytokenizer"
  7. }
  8. },
  9. "tokenizer":{
  10. "mytokenizer":{
  11. "type":"ngram",
  12. "min_gram":1,
  13. "max_gram":2,
  14. "token_chars":[
  15. "letter",
  16. "digit",
  17. "whitespace",
  18. "punctuation",
  19. "symbol"
  20. ]
  21. }
  22. }
  23. }
  24. }
  25. }

案例 3

  1. {
  2. "settings": {
  3. "analysis": {
  4. "filter": { # filter过滤器设置
  5. "edge_ngram_filter":{
  6. "type":"edge_ngram",
  7. "min_gram":1,
  8. "max_gram":50
  9. },
  10. "pinyin_simple_filter":{
  11. "type":"pinyin",
  12. "keep_first_letter":true,
  13. "keep_separate_first_letter":false,
  14. "keep_full_pinyin":false,
  15. "keep_original":false,
  16. "limit_first_letter_length":50,
  17. "lowercase":true
  18. },
  19. "pinyin_full_filter":{
  20. "type":"pinyin",
  21. "keep_first_letter":false,
  22. "keep_separate_first_letter":false,
  23. "keep_full_pinyin":true,
  24. "none_chinese_pinyin_tokenize":true,
  25. "keep_original":false,
  26. "limit_first_letter_length":50,
  27. "lowercase":true
  28. }
  29. },
  30. "tokenizer": { # tokenizer 分词器设置
  31. "ik_max_word":{
  32. "type":"ik_max_word",
  33. "use_smart":true
  34. }
  35. },
  36. "analyzer": { #analyzer 分析器设置
  37. "ngramIndexAnalyzer":{
  38. "type":"custom",
  39. "tokenizer":"keyword",
  40. "filter":[
  41. "edge_ngram_filter",
  42. "lowercase"
  43. ]
  44. },
  45. "ikIndexAnalyzer":{
  46. "type":"custom",
  47. "tokenizer":"ik_max_word"
  48. },
  49. "pinyiSimpleIndexAnalyzer":{
  50. "tokenizer":"keyword",
  51. "filter":[
  52. "pinyin_simple_filter",
  53. "edge_ngram_filter",
  54. "lowercase"
  55. ]
  56. },
  57. "pinyiFullIndexAnalyzer":{
  58. "tokenizer":"keyword",
  59. "filter":[
  60. "pinyin_full_filter",
  61. "lowercase"
  62. ]
  63. }
  64. }
  65. }
  66. }
  67. }

案例 4

这是我们综合的实战的代码

  1. {
  2. "index": {
  3. "number_of_replicas": "1",
  4. "analysis": {
  5. "char_filter": {
  6. "ue_char_filter": {
  7. "type": "mapping",
  8. "mappings": [
  9. "- => ,",
  10. "— => ,"
  11. ]
  12. }
  13. },
  14. "tokenizer": {
  15. "ngram_tokenizer": {
  16. "type": "ngram",
  17. "min_gram": 2,
  18. "max_gram": 3,
  19. "token_chars": [
  20. "letter",
  21. "digit"
  22. ]
  23. }
  24. },
  25. "filter": {
  26. "my_pinyin": {
  27. "type": "pinyin",
  28. "keep_none_chinese": true,
  29. "keep_none_chinese_together": true,
  30. "none_chinese_pinyin_tokenize": false,
  31. "lowercase": true,
  32. "trim_whitespace": true,
  33. "keep_first_letter": true,
  34. "keep_full_pinyin": false,
  35. "keep_joined_full_pinyin": true,
  36. "keep_original": true
  37. }
  38. },
  39. "analyzer": {
  40. "ue_ik_pinyin_analyzer": {
  41. "type": "custom",
  42. "char_filter": [
  43. "html_strip",
  44. "ue_char_filter"
  45. ],
  46. "tokenizer": "ik_max_word",
  47. "filter": [
  48. "my_pinyin"
  49. ]
  50. },
  51. "ue-ngram":{
  52. "type": "custom",
  53. "char_filter": [
  54. "html_strip",
  55. "ue_char_filter"
  56. ],
  57. "tokenizer": "ngram_tokenizer"
  58. }
  59. }
  60. }
  61. }
  62. }