Orcal中文本替换

1.正则表达式方式的替换:

select regexp_replace(city,'java','苍井空',1,0,'i') from lidw li  

原:

 

执行后: 

 

regexp_replace(1,2,3,4,5,6)

语法说明:1:字段   2:替换的字段  3:替换成什么  4:起始位置(默认从1开始)  5:替换的次数(0是无限次)  6:不区分大小写

具体说明:

1:输入的字符串 2:正则表达式 3:替换的字符 4:标识从第几个字符开始正则表达式匹配。(默认为1)5:标识第几个匹配组。(默认为全部都替换掉)

6:取值范围:

  i:大小写不敏感;

  c:大小写敏感;

  n:点号 . 不匹配换行符号;

  m:多行模式;

  x:扩展模式,忽略正则表达式中的空白字符。

 

全部测试数据

SQL> select * from test_reg_substr;

A

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

ABC123XYZ

ABC123XYZ456

Edward

 

替换数字

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','QQQ') AS A FROM test_reg_substr;

A

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

ABCQQQXYZ

ABCQQQXYZQQQ

Edward

 

替换数字(从第一个字母开始匹配,替换第1个匹配项目)

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','QQQ', 1, 1) AS A FROM test_reg_substr;

A

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

ABCQQQXYZ

ABCQQQXYZ456

Edward

 

替换数字(从第一个字母开始匹配,替换第2个匹配项目)

SQL> SELECT

2 REGEXP_REPLACE (a,'[0-9]+','Q', 1, 2) AS A FROM test_reg_substr;

A

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

ABC123XYZ

ABC123XYZQ

Edward

 

替换第二个单词

SQL> SELECT

2 REGEXP_REPLACE (a,'\w+','Kimi', 1, 2) AS A FROM test_reg_substr;

A

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

ABC123XYZ

ABC123XYZ456

Kimi

posted on 2017-02-06 13:05  一克拉的铂金  阅读(169)  评论(0编辑  收藏  举报

导航