当前位置: 首页 > news >正文

sql使用正则表达式替换字符中的一个字

替换某个字段中某一个字
有这样一个需求,替换memo字段中的一个字,例如,将“XXX应付”都替换成“XXX实付”,其他字不变。传统的UPDATE语句做这种更新是非常麻烦的,从10g开始,我们可以使用正则表达式来实现。
select regexp_replace(memo, ' ' , ' ' ) from table_a where code = '102';
update table_a a set memo = regexp_replace(memo, ' ' , ' ' ) where a.code = '102';
其他正则函数介绍
Regexp_like:正则like
SELECT first_name, last_name
FROM employees
WHERE REGEXP_LIKE (first_name, '^Ste(v|ph)en
 
FIRST_NAME LAST_NAME
-------------------- -------------------------
Steven King
Steven Markle
Stephen Stiles
Regexp_instr:判断符合正则条件的位数
'500 Oracle Parkway, Redwood Shores, CA' 源字符串
'[s|r|p][[:alpha:]]{6}' 正则模式,以 s|r|p 开头, 6 个字母
3 开始位置,默认是 1
2 Oracle 搜索满足第 2 个模式的发生,默认是 1
1 返回满足模式的后面的字符串,默认是 0
i 大小写不敏感
SELECT
REGEXP_INSTR('500 Oracle Parkway, Redwood Shores, CA',
 '[s|r|p][[:alpha:]]{6}', 3, 2, 1, 'i') "REGEXP_INSTR"
FROM DUAL;
 
REGEXP_INSTR
------------
 28
Regexp_substr
取子串
SELECT
REGEXP_SUBSTR('http://www.oracle.com/products',
 'http://([[:alnum:]]+\.?){3,4}/?') "REGEXP_SUBSTR"
FROM DUAL;
 
REGEXP_SUBSTR
----------------------
http://www.oracle.com/
Wonder
2008-03-20 );
___FCKpd___3
___FCKpd___4
___FCKpd___5
___FCKpd___6
___FCKpd___7
___FCKpd___8
Regexp_instr:判断符合正则条件的位数
'500 Oracle Parkway, Redwood Shores, CA' 源字符串
'[s|r|p][[:alpha:]]{6}' 正则模式,以 s|r|p 开头, 6 个字母
3 开始位置,默认是 1
2 Oracle 搜索满足第 2 个模式的发生,默认是 1
1 返回满足模式的后面的字符串,默认是 0
i 大小写不敏感
___FCKpd___9
___FCKpd___10
___FCKpd___11
___FCKpd___12
___FCKpd___13
___FCKpd___14
___FCKpd___15
___FCKpd___16
Regexp_substr
取子串
___FCKpd___17
___FCKpd___18
___FCKpd___19
___FCKpd___20
___FCKpd___21
___FCKpd___22
___FCKpd___23
___FCKpd___24
Wonder
2008-03-20

相关文章:

  • html水平镜像和垂直镜像,css实现镜像翻转的方法有哪些
  • 小胖子5个月了
  • 计算机等级考试两天是,2017计算机等级考试考前最后两天如何调整备考心态
  • Widows Mobile Workshop开发培训邀请函-西安站
  • 计算机基础作业3考试客户端答案,2015年12月份考试作业计算机基础第3次作业满分答案...
  • 深入探索Symbian活动对象开发
  • 计算机信息技术ppt,计算机信息技术基本.ppt
  • 大话2正在连接登录服务器,大话西游手游服务器连接失败进不去解决办法
  • SqlServer下数据库链接的使用方法
  • outlook邮箱怎么配置服务器地址多少,Outlook如何设置?Outlook设置方法
  • 将SQL Server 2005中的数据同步到Oracle中
  • 服务器日志文件可以自动删除吗,宝塔面板/www/server/total/logs/里面日志文件 删除方法...
  • 热烈庆祝自己的blog的点击量突破5000
  • excel打开时显示只读或服务器没响应而打不开怎么办,Excel打开时显示只读或服务器没响应而打不开怎么办...
  • sql 中OSQL ;DTS;SSIS的批处理写法
  • JS 中的深拷贝与浅拷贝
  • Android组件 - 收藏集 - 掘金
  • canvas 五子棋游戏
  • Docker下部署自己的LNMP工作环境
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • vue数据传递--我有特殊的实现技巧
  • webgl (原生)基础入门指南【一】
  • webpack入门学习手记(二)
  • 理解IaaS, PaaS, SaaS等云模型 (Cloud Models)
  • 那些年我们用过的显示性能指标
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 浅谈web中前端模板引擎的使用
  • 使用 Node.js 的 nodemailer 模块发送邮件(支持 QQ、163 等、支持附件)
  • 首页查询功能的一次实现过程
  • 详解NodeJs流之一
  • 一个JAVA程序员成长之路分享
  • 一个项目push到多个远程Git仓库
  • 函数计算新功能-----支持C#函数
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​ArcGIS Pro 如何批量删除字段
  • #{} 和 ${}区别
  • #100天计划# 2013年9月29日
  • #if #elif #endif
  • #pragma pack(1)
  • (pojstep1.3.1)1017(构造法模拟)
  • (zt)最盛行的警世狂言(爆笑)
  • (八)Docker网络跨主机通讯vxlan和vlan
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (区间dp) (经典例题) 石子合并
  • (入门自用)--C++--抽象类--多态原理--虚表--1020
  • (译)2019年前端性能优化清单 — 下篇
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • *** 2003
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .CSS-hover 的解释
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .Net CF下精确的计时器
  • .NET 常见的偏门问题
  • .NET 解决重复提交问题
  • .pop ----remove 删除