转至:http://yedward.net/?id=62

(1)oracle中实现截取字符串:substr

substr(string, start_position, [length])

其中,string是元字符串,start_position为开始位置,length是可选项,表示子字符串的位数。

例子:

substr('ABCDEFG', 0);    -- 返回结果是:ABCDEFG,从0位开始截取后面所有

substr('ABCDEFG', 2);    -- 返回结果是:CDEFG,从2位开始截取后面所有

substr('ABCDEFG', 0, 3);  -- 返回结果是:ABC,从0位开始往后截取3个字符长度

substr('ABCDEFG', 0, 100);  -- 返回结果是:ABCDEFG,虽然100超出了元字符串长度,但是系统会按元字符串最大数量返回,不会影响返回结果

substr('ABCDEFG', -3);  -- 返回结果是:EFG,如果是负数,则从尾部往前数,截取-3位置往后的所有字符串

(2)查找字符串位置:instr

instr(string, subString, [start_position, [nth_appearance]])

其中,string是元字符串;subString是要查找的子字符串;start_position是要查找的开始位置,为可选项(默认为1),注意在这里字符串索引从1开始,如果此参数为正,则从左到右检索,如果此参数为负,则从右到左检索;nth_appearance是元字符串中第几次出现的子字符串,此参数可选,缺省默认为1,如果是负数则系统报错。

例子:

instr('ABCDABCDAEF', 'AB');   -- 返回结果是:1,因为instr字符串索引从1开始,所以是1不是0

instr('ABCDABCDAEF', 'DA', 1, 2);   -- 返回结果是:8,返回第二次出现'DA'的位置

instr('A BCDABCDAEF', 'DA', 1, 2);  -- 返回结果是:9,由于我在元字符串中加了一个空格,空格仍然算一个字符

(3)替换字符串:replace

replace(str1, str2, str3)

其表示的意思是:在str1中查找str2,凡是出现str2的地方,都替换成str3。

replace('ABCDEFG', 'CDE', 'cde');  -- 返回结果是:ABcdeFG

replace('ABCDEFG', 'CDE', '');   -- 返回结果是:ABFG,CDE被替换成空字符

replace('ABCDEFG', 'CDE');   -- 返回结果是:ABFG,当不存在第三个参数时,CDE直接被删掉

本来我还以为oracle中也有系统自带的那种像split这样的拆分字符串的函数,结果找了好久,发现居然没有,网上有很多解决方法,我就不总结在这里了,后面需要的时候视情况来写。

使用示例:

SELECT substr('This is a test', 4, 2) FROM dual //结果为s

update tbl_disease t set t.picture = replace(t.picture, 'DieaseUpload/', 'uploadImg/201603/');

[转]Oracle 操作字符串的函数的更多相关文章

  1. Python:常见操作字符串的函数

    Python中提供了很多操作字符串的函数: string = "hello, my dear python!" string.capitalize() #将字符串中的第一个字母大写 ...

  2. oracle获取字符串长度函数length()和hengthb()

    原文:oracle获取字符串长度函数length()和hengthb() lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算s ...

  3. oracle获取字符串长度函数length()和lengthb()

    oracle获取字符串长度函数length()和lengthb()   lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算st ...

  4. C语言 字符串 字符串处理操作 字符串与函数

    字符数组的定义和初始化 宏常量+1  强调了字符串的最大强度 推荐忽略长度的定义 不能对所指向的存储单元内容修改,除非是字符串数组的定义 因为指针变量指向的是字符串数组的值,可以被修改. 未初始化 字 ...

  5. oracle操作字符串:拼接、替换、截取、查找

    1.拼接字符串 1)可以使用“||”来拼接字符串 select '拼接'||'字符串' as str from dual 2)通过concat()函数实现 select concat('拼接', '字 ...

  6. oracle操作字符串:拼接、替换、截取、查找、长度、判断

    1.拼接字符串 1)可以使用“||”来拼接字符串 select '拼接'||'字符串' as str from dual 2)通过concat()函数实现 select concat('拼接', '字 ...

  7. Oracle 对字符串去重函数

    CREATE OR REPLACE FUNCTION ZZMES."REMOVESAMESTR" (oldStr varchar2, sign varchar2) return v ...

  8. oracle正则截取字符串的函数

    现在有这么一个需求, 数据库中的一个手输的'籍贯'字段,要按一定的规范截取显示在报表上,比如,如果'籍贯'的内容是:'山东省潍坊市昌乐县', 那么报表里要显示为:'山东昌乐', 如果'籍贯'是山东省潍 ...

  9. 获取字符串长度函数length()和hengthb()

    oracle获取字符串长度函数length()和hengthb() lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算stri ...

随机推荐

  1. bzoj2242: [SDOI2011]计算器 && BSGS 算法

    BSGS算法 给定y.z.p,计算满足yx mod p=z的最小非负整数x.p为质数(没法写数学公式,以下内容用心去感受吧) 设 x = i*m + j. 则 y^(j)≡z∗y^(-i*m)) (m ...

  2. javascript数组详解

    1.数组的一些方法: <script type="text/javascript"> //var arr = [1,2,3,4]; //性能略高 var arr = n ...

  3. 【iOS-Cocos2d游戏开发之四】独自收集Cocos2d提供的字体!共57种(有对照的字体图)

    本站文章均为李华明Himi原创,转载务必在明显处注明:(作者新浪微博:@李华明Himi) 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-c ...

  4. 根据中国气象局提供的API接口实现天气查询

    中国气象局提供了三个天气查询的API接口: [1]http://www.weather.com.cn/data/sk/101190101.html [2]http://www.weather.com. ...

  5. 最简单的视音频播放示例2:GDI播放YUV, RGB

    前一篇文章对“Simplest Media Play”工程作了概括性介绍.后续几篇文章打算详细介绍每个子工程中的几种技术.在记录Direct3D,OpenGL这两种相对复杂的技术之前,打算先记录一种和 ...

  6. Linux Shell 脚本

    1. 写一个脚本,利用循环计算10的阶乘#!/bin/shfactorial=1for a in `seq 1 10`do       factorial=`expr $factorial \* $a ...

  7. 动态创建WebService

    WebService应用主要是为远程提供接口服务,远程通过代理方式获取WebService资源:但是在现实应用过程中,在Web或者应用程序中如果想用生成远程代理,一般是借助vs里提供的 添加-添加we ...

  8. RESTLET开发实例(一)基于JAX-RS的REST服务

    RESTLET介绍 Restlet项目为“建立REST概念与Java类之间的映射”提供了一个轻量级而全面的框架.它可用于实现任何种类的REST式系统,而不仅仅是REST式Web服务. Restlet项 ...

  9. [BILL WEI] A potentially dangerous Request.Path value was detected from the client 异常处理办法

    我们在ASP.net中使用URL导向后, 我们在访问某个地址,或者打开某个系统页面的时候,就会报错误: A potentially dangerous Request.Path value was d ...

  10. 【LR】录制测试脚本中的基本菜单

    学习来源: MBoo,小强老师性能测试及Loadrunner培训  ——录制测试脚本: 1.Vuser -> run-time settings ->General Run Logic : ...