美文网首页
golang 正则正则表达式反向查询

golang 正则正则表达式反向查询

作者: 小嘛儿小二郎 | 来源:发表于2019-03-12 11:54 被阅读0次

golang 正则正则表达式反向查询

基本上所有的语言都有正则表达式,golang也不例外。golang原生使用regexp包进行正则表达式的匹配。正常情况下满足基础的查询功能。但是,golang为了正则表达式的效率一直坚持O(n)的搜索复杂度,所以有些高级特性将无法满足。

反向查询


(\d)(\d)(\d)\d*\3\2\1

# 1235321

正则表达式可以通过\1的形式反向查询之前匹配的数据,但是原生自带的regxp是不支持该特性。所以只能使用第三方库来支持。


import regexp "github.com/dlclark/regexp2"

re, _ := regexp.Compile(`(\d)(\d)(\d)\d*\3\2\1\d*`, 1)

matched, _ := re.MatchString(s)

if matched {

return true

}

相关文章

  • golang 正则正则表达式反向查询

    golang 正则正则表达式反向查询 基本上所有的语言都有正则表达式,golang也不例外。golang原生使用r...

  • 正则表达式整理

    正则表达式 ()的使用 组合和限制字符 正向和反向查询 正则常用案例

  • 004-golang 正则表达式的使用

    获取包名 参考链接 golang 正则表达式 基础知识 - Golang 中的正则表达式 线上正则表达式测试工具

  • Django模板-反向解析

    反向解析 随着功能的增加会出现更多的视图,可能之前配置的正则表达式不够准确,于是就要修改正则表达式,但是正则表达式...

  • 正则表达式

    菜鸟教程正则表达式教程RE2正则表达式(golang执行的是RE2标准的正则表达式)go语言中单行模式的用法可以查...

  • 隐藏手机中间数字

    正则表达式之反向引用的应用 在保护用户手机号信息时需要将用户手机号中间四位隐藏,可通过正则表达式中的反向引用来实现...

  • JavaScript 正则表达式(3)

    在JavaScript正则表达式(2)中,我们一起学习了正则表达式的入门进阶功能,比如反向引用,分组匹配,环视,一...

  • MongoDB 数据类型(小计3)

    正则表达式类型(type = 11) 主要用于查询,使用正则表达式作为限定条件 example: 1.{name:...

  • 浅谈正则表达式(下)

    本节我们继续接着浅谈正则表达式(中)来讲正则表达式的其他使用。 反向引用 在之前的系列中讲到了捕获,我们知道:捕获...

  • 十四 Django-反向解析

    反向解析 一、概念 随着功能的增加会出现更多的视图,可能之前配置的正则表达式不够准确,于是就要修改正则表达式,但是...

网友评论

      本文标题:golang 正则正则表达式反向查询

      本文链接:https://www.haomeiwen.com/subject/oqpgpqtx.html