Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Elasticsearch:按字母顺序排序,忽略数字&;特殊字符_Java_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch - Fatal编程技术网 elasticsearch,Java,elasticsearch" /> elasticsearch,Java,elasticsearch" />

Java Elasticsearch:按字母顺序排序,忽略数字&;特殊字符

Java Elasticsearch:按字母顺序排序,忽略数字&;特殊字符,java,elasticsearch,Java,elasticsearch,如何按字母顺序对文本字段排序,忽略特殊字符和数字?默认情况下,特殊字符位于数字和字母之后 我需要的是字母表应该排序并首先出现,然后是数字和特殊字符。这在ES 6.3中是否可能 我已尝试使用自定义分析器替换所有非字母字符,但无效: { "analysis": { "analyzer": { "alphabets_analyzer": { "tokenizer": "standard", "type": "keyword", "

如何按字母顺序对文本字段排序,忽略特殊字符和数字?默认情况下,特殊字符位于数字和字母之后

我需要的是字母表应该排序并首先出现,然后是数字和特殊字符。这在ES 6.3中是否可能

我已尝试使用自定义分析器替换所有非字母字符,但无效:

{
  "analysis": {
    "analyzer": {
      "alphabets_analyzer": {
        "tokenizer": "standard",
        "type": "keyword",
        "char_filter": [
          "alphabets_char_filter"
        ]
      }
    },
    "char_filter": {
      "alphabets_char_filter": {
        "type": "pattern_replace",
        "pattern": "[^a-zA-Z\\s\\.]",
        "replacement": ""
      }
    }
  }
}

我可以通过以下索引级别的设置来解决此问题:

{
  "analysis": {
    "analyzer": {
      "alphabetsStringAnalyzer": {
        "tokenizer": "standard",
        "filter": "lowercase",
        "type": "custom",
        "char_filter": [
          "alphabets_char_filter"
        ]
      }
    },
    "char_filter": {
      "alphabets_char_filter": {
        "type": "pattern_replace",
        "pattern": "[^a-zA-Z]",
        "replacement": ""
      }
    }
  }
}
并在索引映射中设置此分析器,如下所示:

"fullName":{
            "type": "keyword",
            "fields": {
                 "raw": {
                     "type": "text",
                     "analyzer": "alphabetsStringAnalyzer",
                     "fielddata": true
                 }
             }
          }

美好的我能用这个。我将模式更改为
[^\p{L}\s]
,这样我就可以保留带有变音符号和空格的字符。