官方网站说明http://www.elasticsearch.org/guide/reference/index-modules/analysis/pattern-tokenizer.html 

//elasticsearch.yml 

   
   
   
   
  1. index : 
  2.     analysis : 
  3.         analyzer :  
  4.             pattern_analyzer: 
  5.                 type: custom 
  6.                 tokenizer: pattern_tokenizer 
  7.         tokenizer: 
  8.             pattern_tokenizer: 
  9.                 type: pattern 
  10.                 pattern: \'([^\']+)\' 
  11.                 group: -1 

 测试 

   
   
   
   
  1. curl -XGET http://localhost:9200/index/_analyze?text=aaa%20'bbb'%20'ccc'&analyzer=pattern_analyzer 

group=-1时

   
   
   
   
  1. tokens: [ 
  2.     token: "aaa "
  3.     start_offset: 0, 
  4.     end_offset: 4, 
  5.     type: "word"
  6.     position: 1 
  7. }, 
  8.     token: " "
  9.     start_offset: 9, 
  10.     end_offset: 10, 
  11.     type: "word"
  12.     position: 2 

group=0时

   
   
   
   
  1. tokens: [ 
  2.     token: "'bbb'"
  3.     start_offset: 4, 
  4.     end_offset: 9, 
  5.     type: "word"
  6.     position: 1 
  7. }, 
  8.     token: "'ccc'"
  9.     start_offset: 10, 
  10.     end_offset: 15, 
  11.     type: "word"
  12.     position: 2 

group=1时

   
   
   
   
  1. tokens: [ 
  2.     token: "bbb"
  3.     start_offset: 5, 
  4.     end_offset: 8, 
  5.     type: "word"
  6.     position: 1 
  7. }, 
  8.     token: "ccc"
  9.     start_offset: 11, 
  10.     end_offset: 14, 
  11.     type: "word"
  12.     position: 2 

group=2时

   
   
   
   
  1.     error: "IndexOutOfBoundsException[No group 2]"
  2.     status: 500