这是Oracle对正則表達式的backreference的描写叙述

从定义中能够看到,当匹配表达式中已()的形式将一个子串包括起来。后面就能够以\?

的形式来引用。\1相应第一个(),\2相应第二个...

 

反向引用的引入使得正則表達式的匹配功能变得更加强大,介绍两个在oracle正则函数中的应用

 

regexp_like

 

regexp_like('1211233','^([0-9])(\d)\1\1\2(\d)\3$')

上面这个样例中,匹配表达式里,\1表示第一个([0-9])。这个表达式要推断字符串中的第3、4位数字是否和第1位同样。而不不过匹配[0-9]

 

regexp_replace

 

regexp_replace('1234567','^(.)(.)(.)(.)(.)(.)','\1\2\5')

这里,将符合匹配表达式中的部分替换掉,换成满足\1\2\5的内容,即第一个(.)第二个(.)和第五个(.)

猜猜这里会返回什么?

因为^(.)(.)(.)(.)(.)(.)匹配了字符串的前6位,因此结果为\1\2\5||第6位之后的部分。即1257

backreference Oracle正則表達式中的反向引用的更多相关文章

  1. php正則表達式中的非贪婪模式匹配的使用

    php正則表達式中的非贪婪模式匹配的使用 通常我们会这么写: $str = "http://www.baidu/.com? url=www.sina.com/"; preg_mat ...

  2. JAVA中正則表達式总结

    昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...

  3. js中 正則表達式

    正則表達式使用具体解释 简单介绍 简单的说,正則表達式是一种能够用于模式匹配和替换的强有力的工具.其作用例如以下: 測试字符串的某个模式.比如,能够对一个输入字符串进行測试,看在该字符串是否存在一个电 ...

  4. 正則表達式re中的贪心算法和非贪心算法 在python中的应用

    之前写了一篇有关正則表達式的文章.主要是介绍了正則表達式中通配符 转义字符 字符集 选择符和子模式 可选项和反复子模式 字符串的開始和结尾 ,有兴趣的能够查看博客内容. 此文章主要内容将要介绍re中的 ...

  5. javascript中的正則表達式

    对文本数据进行操作是JavaScript中常见的任务.正則表達式通过同意程序猿指定字符串匹配的模式来简化诸如验证表单中输入是否具有正确格式之类的任务. 1.正則表達式标记: 字符 含义 举例 i 大写 ...

  6. PHP第九课 正則表達式在PHP中的使用

    今天内容 1.正則表達式 2.数学函数 3.日期函数 4.错误处理 正則表達式: 1.模式修正符 2.五个经常使用函数 另外一个正則表達式的站点:http://www.jb51.net/tools/z ...

  7. vim中使用正則表達式

    一.使用正則表達式的命令 使用正則表達式的命令最常见的就是 / (搜索)命令. 其格式例如以下: /正則表達式 还有一个非常实用的命令就是 :s(替换)命令,将第一个//之间的正則表達式替换成第二个/ ...

  8. JAVA中正則表達式总结(具体解释及用途)

    很多语言,包含Perl.PHP.Python.JavaScript和JScript,都支持用正則表達式处理文本,一些文本编辑器用正則表達式实现高级"搜索-替换"功能.所以JAVA语 ...

  9. js正則表達式语法

    1. 正則表達式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...

随机推荐

  1. 《计算机图形学》2.1.1 刷新式CRT

    图形系统一般使用显示器作为其输出设备. 大部分视频监视器的操作是基于标准的阴极射线管(cathode-ray tube,CRT)设计的,但是也已经出现了其他一些技术,并且固态监视器终究要占据主导地位. ...

  2. java上传并压缩图片(等比例压缩或者原尺寸压缩)

    本文转载自http://www.voidcn.com/article/p-npjxrbxr-kd.html 先看效果: 原图:1.33M 处理后:27.4kb 关键代码; package codeGe ...

  3. Esper学习之十五:Pattern(二)

    上一篇开始了新一轮语法——Pattern的讲解,一开始为大家普及了几个基础知识,其中有说到操作符.当时只是把它们都列举出来了,所以今天这篇就是专门详解这些操作符的,但是由于篇幅限制,本篇先会讲几个,剩 ...

  4. Python读写txt文本文件

    一.文件的打开和创建 ? 1 2 3 4 5 >>> f = open('/tmp/test.txt') >>> f.read() 'hello python!\n ...

  5. 在winform上内嵌入其它的程序

    这段代码很有意义,用于把一个程序的界面嵌入到我们自己程序的某个指定窗体上. 比如在某个项目里,我需要把基恩士的激光扫描轮廓显示给客户看,但是激光的DLL中并没有这种功能提供. 于是我想先启动激光的官方 ...

  6. angularjs实现选项卡实例

    注意:事件.循环.赋值在一起就出错 错误实例: <!DOCTYPE html> <html ng-app="tab_switch"> <head> ...

  7. openstack 中镜像状态详解 Image Statuses

    Images in Glance can be in one the following statuses: queued The image identifier has been reserved ...

  8. 关于windows 7系统下开启休眠功能的方法

    今天笔者新装了一个windows 7操作系统,装完后,点击开始按钮.鼠标放到关机处的左边扩展选项时,没有发现休眠选项. 于是开始上网查询解决方法,并将过程记录如下: 首先简单的介绍一下休眠功能:休眠( ...

  9. [SQL] 命令远程恢复数据库

    sp_configure ; RECONFIGURE; GO sp_configure ; RECONFIGURE; GO EXEC master..xp_cmdshell 'net use \\70 ...

  10. mysql补充(3)优化sql语句查询常用的30种方法

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索 ...