裁剪 TRIM、LTRIM、RTRIM

用法如下:
declare
  a varchar2(30) :='this is apple!!!!!!';
  b varchar2(30):='ssthis...is apple this';
  begin
    dbms_output.put_line( rtrim (a,'le!')); //右--&gt左截取
     dbms_output.put_line( ltrim (b,'th')); //左--&gt右截取
    dbms_output.put_line( trim ( leading 's' from b));//左截取(头)
    dbms_output.put_line( trim ( trailing 's' from b));//右截取(尾)
    dbms_output.put_line( trim ( 's' from b));//左右截取(头尾)=trim(both 's' from b)[不写默认就是both]
  end;
说明:
    
ltrim表示从左往右在字符串中依次匹配't','h'(注意这里是依次匹配,我有意拆分字符串'th''),当匹配的字符不是't'或'h'时,匹配结束并返回结果。
此例返回:ssthis...is apple this (首字符s跟t不匹配,不截取,首字符s跟h也不匹配,也不截取,匹配完毕返回结果)。
如b:='hthis...is apple this'-----&gt结果:is...is apple this(第一步:h跟【t,h】中的【h】匹配,截取,第二步:t跟【t,h】中的【t】匹配,截取,第三步:h跟【t,h】中的【h】匹配,截取,第四步:.跟【t,h】任意一个都不匹配,截取结束,返回结果。
    rtrim表示从右往左在字符串中依次匹配'le!',其匹配方式跟ltrim相同,如上结果:this is app。
要点:依次匹配


trim
:(跟ltrim、rtrim的表达形式有差异
  dbms_output.put_line(trim(leading 's' from b));//左截取(头)
    dbms_output.put_line(trim(trailing 's' from b));//右截取(尾)
    dbms_output.put_line(trim( 's' from b));//左右截取(头尾)=trim(both 's' from b)[不写默认就是both]
要点:trim中截取匹配的只能是单个字符,不能是字符串,否则会报错:ORA-30001: trim set should have only one character

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29665458/viewspace-1164372/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29665458/viewspace-1164372/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值