vfp替换数字中的某位 15

比如说A列里原来的数字是“1234567”,现在想把前两位保留,后边的替换成34567替换成56789,这个命令怎么写?比如说A列里原来的数字是“1234567”,现在想... 比如说 A列里原来的数字是“1234567”,现在想把前两位保留,后边的替换成34567替换成56789,这个命令怎么写?
比如说 A列里原来的数字是“1234567”,现在想把前两位保留,后边的34567替换成56789,这个命令怎么写?
展开
 我来答
快情签10
2013-07-24 · TA获得超过293个赞
知道小有建树答主
回答量:197
采纳率:0%
帮助的人:179万
展开全部

replace all  a with strtran(a,"34567","56789")


strtran函数的作用就是在某个字符串中查找特定的字符串,如果找到,把找到的子串替换成另一个字符串。


  • 以下是帮助文档中的:


STRTRAN(cSearched, cExpressionSought [, cReplacement]

   [, nStartOccurrence] [, nNumberOfOccurrences] [, nFlags])


参数


cSearched 


指定要搜索的字符表达式,cSearched 可以是一个备注字段。


cExpressionSought 


指定在 cSearched 中要搜索的字符表达式,搜索过程区分大小写。cExpressionSought 

可以是一个备注字段。


[, cReplacement] 


指定用来替换在 cSearched 中每次出现的 cSearchFor 的字符表达式。如果省略 

cReplacement,则用空字符串替换每次出现的 cExpressionSought 。


[, 

nStartOccurrence] 


指定哪个出现的 cExpressionSought 首先替换。例如,如果 nStartOccurrence 是 4,则替换 

cSearched 中第 4 个出现的 cExpressionSought,而前面三次出现的 

cExpressionSought 保持不变。如果省略 nStartOccurrence,替换开始的位置默认为第一次出现位置。


[, 

nNumberOfOccurrences] 


指定要替换的 cExpressionSought 数目。如果省略 nNumberOfOccurrences,则从用 

nStartOccurrence 指定的位置开始,替换所有出现的 cExpressionSought。


[, nFlags] 


指定按照该值后面进行区分大小写的搜索。



注意:


如果必需仅指定 nFlags 和必要的参数一起设置, 指定–1 

为你需要忽略的可选参数。

    



下列表格列出 nFlags 的值:


nFlags


说明


0 或 -1

   

搜索是区分大小写的, 用精确的 cReplacement 文本进行替换。(默认)。


注意:


此设置为在 Visual FoxPro 7.0 以前的版本中的 STRTRAN( ) 指定原始的行为。也可以传递 -1 为 

nFlags 来指定默认行为。

    


1

   

搜索是不区分大小写的, 用精确的 cReplacement 文本进行替换。


2

   

搜索是区分大小写的, 用 cReplacement 的大小写变化来匹配找到的大小写字符串进行替换。


3

   

搜索是不区分大小写的,用 cReplacement 

的大小写变化来匹配找到的大小写字符串进行替换。


注意:


cReplacement 的大小写改变仅在找到的字符串全部是大写, 

小写或混合格式时发生。

    




返回值


字符型。STRTRAN( ) 返回结果字符串。


示例


以下示例用 STORE 命令保存字符串 "abracadabra" 到变量 gcString。STRTRAN( ) 

函数替换字符 "a" 为字符 "z" 并用 ? 命令显示 字符串 "zbrzczdzbrz"。STRTRAN( ) 然后用字符 

"q" 替换三次字符 "a", 从第二次出现开始替换, 并显示 "abrqcqdqbra"。




复制代码


STORE 'abracadabra' TO gcString

? STRTRAN(gcString, 'a', 'z')

uhmf
2013-07-19 · TA获得超过1457个赞
知道大有可为答主
回答量:1891
采纳率:50%
帮助的人:1319万
展开全部
若“ A列字段名”字段是字符型的
replace A列字段名 left(A列字段名,2)+'56789' all
若是数字型的
replace A列字段名 round(A列字段名,-5)+56789 all
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
过客1395528828
2013-07-29
知道答主
回答量:1
采纳率:0%
帮助的人:1476
展开全部
replace a with left(a,1,2)+'56789'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zzl999001
2013-07-18
知道答主
回答量:25
采纳率:0%
帮助的人:6.1万
展开全部
什么意思啊,请详细说明
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式