oracle正则匹配全部,sql – 返回Oracle中正则表达式的所有匹配项

您已经提供了数据样本,说明这是一行,但已将其显示为两个不同的行.所以这个例子基于你的话.

-- Sample of data from your question + extra row for the sake of demonstration

-- id column is added to distinguish the rows(I assume you have one)

with t1(id, col) as(

select 1, '^FO360,065^AEN,25,10^FD{CUSTOMERS1.CUST_NAME}^FS^FO360,095^AAN,15,12^FD{CUSTOMERS1.CUST_ADDR1}^FS' from dual union all

select 2, '^FO360,065^AEN,25,10^FD{CUSTOMERS2.CUST_NAME}^FS^FO360,095^AAN,15,12^FD{CUSTOMERS2.CUST_ADDR2}^FS' from dual

),

cnt(c) as(

select level

from (select max(regexp_count(col, '{\w+.\w+}')) as o_c

from t1

) z

connect by level <= z.o_c

)

select t1.id, listagg(regexp_substr(t1.col, '{\w+.\w+}', 1, cnt.c)) within group(order by t1.id) res

from t1

cross join cnt

group by t1.id

结果:

ID RES

---------------------------------------------------------

1 {CUSTOMERS1.CUST_ADDR1}{CUSTOMERS1.CUST_NAME}

2 {CUSTOMERS2.CUST_ADDR2}{CUSTOMERS2.CUST_NAME}

根据问题的@a_horse_with_no_name comment,实际上,更换其他与模式不匹配的内容要简单得多.这是一个例子:

with t1(col) as(

select '^FO360,065^AEN,25,10^FD{CUSTOMERS.CUST_NAME}^FS^FO360,095^AAN,15,12^FD{CUSTOMERS.CUST_ADDR1}^FS' from dual

)

select regexp_replace(t1.col, '({\w+.\w+})|.', '\1') res

from t1

结果:

RES

-------------------------------------------

{CUSTOMERS.CUST_NAME}{CUSTOMERS.CUST_ADDR1}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381258.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

hashtable,dictionary 从原理上说说有什么异同,哪个性能高一些

hashtable里存的对象全部是object类型 ,所有对象存进去都被转成object类型,读取出来每次都需要转换类型,hashtable对存入的类型没有限制 , 因此在读取转换类型时容易出错, dictionary只能存入定义时指定的类型,而且不像hashtable会把类型转换成object,存取起来比前者方便,效率更…

riak php7,Laravel中服务提供者的register和boot分别是干什么

register方法正如前面所提到的&#xff0c;在register方法中只绑定事物到服务容器&#xff0c;而不要做其他事情&#xff0c;否则&#xff0c;一不小心就能用到一个尚未被加载的服务提供者提供的服务。现在让我们来看看一个基本的服务提供者长什么样&#xff1a;namespace AppP…

天锐绿盾解密_天锐绿盾数据防泄密系统

天锐绿盾数据防泄密系统&#xff08;简称数据防泄密系统&#xff09;是一套从源头上保障数据安全和使用安全的软件系统。包含了文件透明加解密、内部文件流转、密级管控、离线管理、文件外发管理、灵活的审批流程、工作模式切换、服务器白名单等功能&#xff0c;并全面覆盖Mac、…

批处理文件入门

后缀是bat的文件就是批处理文件&#xff0c;是一种文本文件。简单的说&#xff0c;它的作用就是自动的连续执行多条命令&#xff0c;批处理文件的内容就是一条一条的命令。那它有什么用呢&#xff1f; 比如&#xff0c;在启动wps软件时&#xff0c;每次都必须执行 C:\>cd wp…

python批量生成图片_利用Python批量生成任意尺寸的图片

实现效果通过源图片&#xff0c;在当前工作目录的/img目录下生成1000张&#xff0c;分别从1*1到1000*1000像素的图片。效果如下&#xff1a;目录结构实现示例# -*- coding: utf-8 -*-import threadingfrom PIL import Imageimage_size range(1, 1001)def start():for size in …

sql server linkserver oracle,SQL Server中使用Linkserver连接Oracle的方法

1.安装Oracle Client连接到Oracle的前提是在SQL Server服务器上安装Oracle Client。Oracle Client下载地址如下&#xff1a;安装完毕后要修改对应的tnsnames文件才能连接对应的数据&#xff0c;该文件所在目录&#xff1a;Oracle安装路径\product\10.2.0\client_1\NETWORK\ADMI…

SQL Server日期格式转换大全

Sql Server 中一个非常强大的日期格式化函数 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GETDATE(), 3): 1…

oracle传date参数十二小时,Oracle数据库中 to_date()与24小时制表示法及mm分钟的显示...

一、在使用Oracle的to_date函数来做日期转换时&#xff0c;时候也许会直接的采用“yyyy-MM-dd HH:mm:ss”的格式作为格式进行转换&#xff0c;但是在Oracle中会引起错误&#xff1a;“ORA 01810 格式代码出现两次”。to_date(2005-01-01 13:14:20,yyyy-MM-dd HH24:mm:ss)原因是…

矩阵维度必须一致_如何从看得懂到会使用矩阵思维

本来我一开始是想学习如何使用艾森豪威尔矩阵的&#xff0c;但是利用学习观的方法想去网上找有关艾森豪威尔矩阵的例子时&#xff0c;发现网上几乎没有&#xff0c;网上能搜出来的都是对这个矩阵的介绍&#xff0c;看完这些介绍你会发现很简单&#xff0c;都能看懂&#xff0c;…

Windows 7 / Vista 分区问题

这个问题开始也困扰我很久&#xff0c;终得一无需安装软件且一招见招之法&#xff0c;步骤如下&#xff1a; 1.Windows键R&#xff0c;打开运行对话框&#xff0c;键入&#xff1a;diskpart #进入Windows 自带的磁盘管理程序进入DOS窗口&#xff1a;DISKPART> 2.键入&#x…

linux下的文件系统,Linux系统中常见的文件系统有哪些?

Linux系统是现在非常受欢迎的操作系统&#xff0c;在Linux之中&#xff0c;一切都是文件&#xff0c;因为有很多操作都是依靠文件系统才可以完成的&#xff0c;而且文件系统可以满足用户正常的使用&#xff0c;那么Linux中常见的文件系统有哪些?为大家介绍一下。总体来说&…

numpy 归一化_归一化(MinMax)和标准化(Standard)的区别

此文参考https://blog.csdn.net/u010947534/article/details/86632819定义上的区别归一化&#xff1a;将数据的值压缩到0到1之间&#xff0c;公式如下标准化&#xff1a;将数据所防伪均值是0&#xff0c;方差为1的状态&#xff0c;公式如下&#xff1a;归一化、标准化的好处&am…

学习网页栅格系统的几篇好文

1.[蓝色理想]网页的栅格系统设计[1] http://www.blueidea.com/design/doc/2008/6171.asp 2.[蓝色理想]网页的栅格系统设计[2] http://www.blueidea.com/design/doc/2008/6171_2.asp 3.网页栅格系统研究&#xff08;1&#xff09;&#xff1a;960的秘密 http://www.68design.net…

linux中updatedb命令详解,updatedb命令

updatedb命令用来创建或更新 slocate/locate 命令所必需的数据库文件。updatedb命令的执行过程较长&#xff0c;因为在执行时它会遍历整个系统的目录树&#xff0c;并将所有的文件信息写入 slocate/locate 数据库文件中。 注意&#xff1a;slocate 本身具有一个数据库&#xff…

python多态_Python基础入门18节-第十六节 面向对象如何理解多态

多态是面向对象的一大特性&#xff0c;Python本身也是一门多态性的语言。在Python中要实现多态&#xff0c;还是得借助于上节提到的继承。假设有这么一个场景&#xff0c;在夏季我们可以看到荷花、牡丹花、太阳花&#xff0c;夏天一到这些花全都开放了。这些花我们就将它理解多…

WCF中的方法重载 实现

操作重载注意:WCF是不支持重载的&#xff0c;如果硬是写成重载的话&#xff0c;会抛出异常 InvalidOperationException,但是我们可以模拟&#xff01; 原C#中的方法重载: interface ICalculator...{ int Add(int arg1,int arg2); double Add(double arg1,double arg2);} 在…

linux重新安装ssh服务器,Linux平台ssh服务器安装方法

玩蛇网推荐图文教程&#xff1a;python 列表关于SSH是什么及SSH的作用这里不做介绍&#xff0c;如果要了解可以自行面度哦。下面我就就开始以Linux平台为例&#xff0c;讲讲Linux平台ssh服务器安装方法。以下方法中都是以root用户权限去操作&#xff0c;大家在真实操作中&#…

linux重启后root密码错误,Linux技巧| 解决Debian Root密码忘记的问题

Debian Root密码忘记开机 grub 菜单下进入单用户模式进行修改密码/修改系统文件。解决过程注&#xff1a;本教程适用于 Debian 7 8 91. 首先。重启一下系统。在开机 grub 内核选择菜单那里&#xff0c;迅速按“e”。2. 将光标移动到“linux”开头的那一行&#xff0c;将原来的“…

python缩进tab还是空格_Python码农有话说:写代码时应该缩进使用 tab还是空格?...

对于程序员来说&#xff0c;其实Tab和空格远远不只是“立场”问题那么简单。在不同的编辑器里tab的长度可能不一致&#xff0c;所以在一个编辑器里用tab设置缩进后&#xff0c;在其它编辑器里看可能缩进就乱了。空格不会出现这个问题&#xff0c;因为空格就占一个字符的位置。大…

SilverLight学习笔记--Silverlight中WebService通讯

本文我们学习如何在Silverlight中使用WebService进行通讯。 新建项目Silverlight应用程序&#xff0c;命名为&#xff1a;SLWebService。在服务器端我们需要做两项目工作: 1、在Web项目中新建一个类Person&#xff0c;我们将在WebService中返回它的实例化对象。Person类定义如下…