ウェブサービスを作っています。

全角や空白を含む問い合わせ番号でも検索できる Elasticsearch の analyzer

elasticserach-rails での設定例です。

settings(
  analysis: {
    filter: {
      whitespace_remove: {
        type: 'pattern_replace',
        pattern: "\\p{javaWhitespace}",
        replacement: ''
      }
    },
    
    analyzer: {
      my_code_analyzer: {
        type: 'custom',
        filter: [
          'icu_normalizer',
          'whitespace_remove'
        ],
        tokenizer: 'keyword'
      }
    }
  })