VFP 中的字符串替换函数 CHRTRAN()

CHRTRAN() 函数

<script language="JavaScript1.2" src="../../js/content1.js" type="text/javascript"></script>

将一字符串中的某些字符替换为另一些字符。

语法

CHRTRAN(字符表达式1,字符表达式2,字符表达式3)

返值类型

字符型

参数描述

字符表达式1:字符串,其中的某些字符将被替换。

字符表达式2:确定字符表达式1中的哪些字符将被替换。

字符表达式3:用于替换的字符。

看了上面的内容后可能还是有点稀里糊涂,那就用一个例子来说明吧:

? CHRTRAN('AABCDEF', 'ACE', 'XYZ')

显示结果是:XXBYDZF

即用“X”替换“AABCDEF”中的“A”,“Y”替换“C”,“Z”替换“E”。这下明白了吧:)

注意

如果“字符表达式3”中的字符少于“字符表达式2”中的字符数,那么“字符表达式1”与“表达式2”中多余的字符相匹配的字符将被删除,怎么讲起来总象绕口令,还是看例子:

? CHRTRAN('AABCDEF', 'ACE', 'XY')

显示结果是:XXBYDF,“E”被删掉,或者说“XY”中第3个字符是空字符,“E”被这个空字符替换了。

说明

另有一个函数 CHRTRANC(),主要用于双字节的字符,如字符串中有中文,最好使用这个函数。 

 

========================================================================

 

请问,VFP中有没有字符串替换函数
[ 来源:ITWENKU 时间:2006-9-21 20:03:18 | 浏览:12人次 ]
 

例如:

s = abc
s = replace(s, "b", "x")
? s

s输出axc

谢谢!
<script src="../../ads/ad468_1.js" type="text/javascript"></script>

CHRTRAN(), 替换字符,如CHRTRAN("123456", "135", "ABC") ==> "A2B4C6"
STRTRAN(),替换字符串,如STRTRAN("123456", "123", "112233") ==> "112233456"



s = STRTRAN(s, "b", "x")


UP


其实strtran可以替代chrtran,vfp中string和chr不是分得很清晰.


strtran可以替代chrtran?

STRTRAN()是替换整个字符的,CHRTRAN()是一个一个字符替换的,某些时候相同,但两个函数面向不同的用途。

s = "1,2,3,4,5"
STRTRAN(s, ",", "-")
CHRTRAN(s, ",", "-")

此时是相同的,但此时应该用CHRTRAN()

s = "{1},{2},{3},{4},{5}"
CHRTRAN(s, "{}", "[]")可以将上面的字符串转换成"[1],[2],[3],[4],[5]",而STRTRAN()就做不到

s = "12345"
STRTRAN(s, "12345", "ABCDE")
CHRTRAN(s, "12345", "ABCDE")

此时两者结果相同,但运行机理是不同的,此时应该用STRTRAN()


s = "1 1 1" && 内含一个半角空格和一个全角空格
此时可用CHRTRANC(s, "  ", "")将其中的“空格”去掉,不管全角还是半角



Foxer(狐狸)说得很详细

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值