RTRIM语法举例

以下是OCP教材中对该函数的描述
RTRIM(<c1>,<c2> ) takes two arguments, where c1 and c2 are character
strings. This function returns c1 without any trailing characters that appear
in c2. If no c2 characters are trailing characters in c1, then c1 is returned
unchanged. c2 defaults to a single space.

大家对Rtrim舍去字符串右边的空字符串是毫无疑问的


有疑问的应该是右边是字符串如何处理的。
例如:

SELECT RTRIM('Mississippi','ip') test1, RTRIM('Rpadded     ') test2, RTRIM('Mississippi','sip') test3 FROM dual;




结果为:
test1         test3        test3
Mississ      Rpadded       M



分析:

test1的实现

首先从字符串'Mississippi'右边开始往左边查找'ip'中的任意字符,如果是'i'字符或者'p'字符匹配就需要删除,都不是就停止匹配
从右往左开始,字符串的第一个字符为'i',匹配,需要删掉,
然后字符串的第二个字符为'p',也匹配,需要删除,
然后字符串的第三个字符为‘p’,也匹配,需要删除,
然后字符串的第四个字符为‘i’,也匹配,需要删除,
然后字符串的第五个字符‘s’,既不匹配字符'i'也不匹配字符'p',停止匹配

所以结果应该是Mississ


test2的实现

去掉字符串从右往左的空格直到,非空字符为止


test3的实现

首先从字符串'Mississippi'右边开始往左边查找'sip'中的任意字符,如果是's'字符或者'i'字符或者'p'字符匹配就需要删除,都不是就停止匹配
从右往左开始,字符串的第一个字符为'i',匹配,需要删掉,
然后字符串的第二个字符为'p',也匹配,需要删除,
然后字符串的第三个字符为‘p’,也匹配,需要删除,
然后字符串的第四个字符为‘i’,也匹配,需要删除,
然后字符串的第五个字符为‘s’,也匹配,需要删除,
然后字符串的第六个字符为‘s’,也匹配,需要删除,
然后字符串的第七个字符为‘i’,也匹配,需要删除,
然后字符串的第八个字符为‘s’,也匹配,需要删除,
然后字符串的第九个字符为‘s’,也匹配,需要删除,
然后字符串的第十个字符为‘i’,也匹配,需要删除,
然后字符串的第十一个字符‘M’,既不匹配字符's'也不匹配字符'i'也不匹配字符'p',停止匹配

所以结果应该是M


自我测试题:

SELECT RTRIM('Mississippi','Misp') test1, RTRIM('Mississippi','i') test2 FROM dual;

test1        test2
             Mississipp








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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值