STUFF() 函数

STUFF() 函数

将一字符串中的某一部分用另一个字符串替换掉。

语法

STUFF( 原字符串 , 开始替换的位置 , 被替换的字符数 , 用于替换的字符串 )

返值类型

字符型

参数描述

原字符串 :其中的某一部分将被替换。(解释似乎比被解释的更难懂)

开始替换的位置 :指定从原字符串的第几个字符开始替换。

被替换的字符数 :指定从开始处连续有几个字符要被替换掉。

绝招
如果此数为0,那么“用于替换的字符串”将插入到开始处。

用于替换的字符串 :该字符串将代替被替换掉的字符串放到原字符串当中。

绝招
如果此为空字符串,被替换的字符将被删除。

示例

STORE 'abcdefghijklm' TO gcString1
STORE '12345' TO gcString2
CLEAR
? STUFF(gcString1, 4, 0, gcString2) && 插入
? STUFF(gcString1, 4, 5, gcString2) && 替换
? STUFF(gcString1, 4, 6, '') && 删除
? STUFF(gcString1, 4, 3, gcString2) && 替换3个,其它的就插入
? STUFF(gcString1, 4, 7, gcString2) && 替换5个,还有两个没东西替换的就删掉
? STUFF(gcString1, 4, LEN(gcString1), gcString2) && 替换5个,其余全删掉

这最后一个可能要动下脑筋想想为什么。

想看看运行的结果是怎样的吗?那就自己试试吧,您可以在命令窗口中一句一句的试。

说明

仔细对比一下 STUFF() 与CHRTRAN() 、STRTRAN() 的区别。

另有一个 STUFFC() 函数,它把汉字当一个字符看待,这样不会出现半个字符的现象,而 STUFF() 则把汉字当两个字符来处理,您可以比较一下如下两句:

stuff('FOXPRO 爱好者的天堂',9,1,'a')
stuffc('FOXPRO 爱好者的天堂',9,1,'a')

posted @ 2011-09-15 11:21  V.Wang  阅读(1604)  评论(0编辑  收藏  举报