regex - Elasticsearch 正则表达式从右边获取最后7位数字

标签 regex elasticsearch pattern-matching sense

我有以这种格式索引的数据676767 2343423 234444432494444。我需要一个正则表达式来对anlayser的右后7位数字进行图案化。例如,输出为2494444。我们尝试了[0-9] {7}的模式不起作用。

最佳答案

在ElasticSearch中,模式为anchored by default。这意味着,您不能依靠部分匹配来匹配整个字符串并捕获最后连续的7位

使用

.*([0-9]{7})

哪里
  • .*-将匹配换行符以外的任何0+个字符(尽可能多),然后回溯以匹配...
  • ([0-9]{7})-捕获组1中放置了7位数字。

  • 如果在正则表达式模式中定义了捕获组,则Sense插件将返回捕获的值,因此,无需执行其他提取工作(或组访问工作)。

    关于regex - Elasticsearch 正则表达式从右边获取最后7位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40124985/

    相关文章:

    elasticsearch - elasticsearch中的动态方面。嵌套面?

    elasticsearch - 从 ElasticSearch 中的集群中获取所有索引和类型的名称

    java - 正则表达式: exclusion in character class

    PHP删除字符串中的重复模式

    php - 比较单词,还需要找复数和ing?

    regex - 替代 for() 循环以将非常大的数据框列条目与非常大的向量列表进行比较

    regex - 确定文件是否包含特定字符串的最快方法是什么?

    python - 基于正则表达式过滤数据框

    spring-boot - 找不到org.elasticsearch.client.Cancellable的类文件

    scala - 为什么我不能在 Scala 中对 Stream.empty 进行模式匹配?