將一字符串中的某些字符替換為另一些字符。
語法
CHRTRAN(字符表達(dá)式1,字符表達(dá)式2,字符表達(dá)式3)
返值類型
字符型
參數(shù)描述
字符表達(dá)式1:字符串,其中的某些字符將被替換。
字符表達(dá)式2:確定字符表達(dá)式1中的哪些字符將被替換。
字符表達(dá)式3:用于替換的字符。
看了上面的內(nèi)容后可能還是有點(diǎn)稀里糊涂,那就用一個(gè)例子來說明吧:
? CHRTRAN(’AABCDEF’, ’ACE’, ’XYZ’)
顯示結(jié)果是:XXBYDZF
即用“X”替換“AABCDEF”中的“A”,“Y”替換“C”,“Z”替換“E”。這下明白了吧:)
注意如果“字符表達(dá)式3”中的字符少于“字符表達(dá)式2”中的字符數(shù),那么“字符表達(dá)式1”與“表達(dá)式2”中多余的字符相匹配的字符將被刪除,怎么講起來總象繞口令,還是看例子:
? CHRTRAN(’AABCDEF’, ’ACE’, ’XY’)
顯示結(jié)果是:XXBYDF,“E”被刪掉,或者說“XY”中第3個(gè)字符是空字符,“E”被這個(gè)空字符替換了。
說明
另有一個(gè)函數(shù) CHRTRANC(),主要用于雙字節(jié)的字符,如字符串中有中文,使用這個(gè)函數(shù)。
========================================================================
請(qǐng)問,VFP中有沒有字符串替換函數(shù)
[ 來源:ITWENKU 時(shí)間:2006-9-21 20:03:18 | 瀏覽:12人次 ]
例如:
s = abc
s = replace(s, "b", "x")
? s
s輸出axc
CHRTRAN(), 替換字符,如CHRTRAN("123456", "135", "ABC") ==> "A2B4C6"
STRTRAN(),替換字符串,如STRTRAN("123456", "123", "112233") ==> "112233456"
s = STRTRAN(s, "b", "x")
UP
其實(shí)strtran可以替代chrtran,vfp中string和chr不是分得很清晰.
strtran可以替代chrtran?
STRTRAN()是替換整個(gè)字符的,CHRTRAN()是一個(gè)一個(gè)字符替換的,某些時(shí)候相同,但兩個(gè)函數(shù)面向不同的用途。
s = "1,2,3,4,5"
STRTRAN(s, ",", "-")
CHRTRAN(s, ",", "-")
此時(shí)是相同的,但此時(shí)應(yīng)該用CHRTRAN()
s = "{1},{2},{3},{4},{5}"
CHRTRAN(s, "{}", "[]")可以將上面的字符串轉(zhuǎn)換成"[1],[2],[3],[4],[5]",而STRTRAN()就做不到
s = "12345"
STRTRAN(s, "12345", "ABCDE")
CHRTRAN(s, "12345", "ABCDE")
此時(shí)兩者結(jié)果相同,但運(yùn)行機(jī)理是不同的,此時(shí)應(yīng)該用STRTRAN()
s = "1 1 1" && 內(nèi)含一個(gè)半角空格和一個(gè)全角空格
此時(shí)可用CHRTRANC(s, " ", "")將其中的“空格”去掉,不管全角還是半角
語法
CHRTRAN(字符表達(dá)式1,字符表達(dá)式2,字符表達(dá)式3)
返值類型
字符型
參數(shù)描述
字符表達(dá)式1:字符串,其中的某些字符將被替換。
字符表達(dá)式2:確定字符表達(dá)式1中的哪些字符將被替換。
字符表達(dá)式3:用于替換的字符。
看了上面的內(nèi)容后可能還是有點(diǎn)稀里糊涂,那就用一個(gè)例子來說明吧:
? CHRTRAN(’AABCDEF’, ’ACE’, ’XYZ’)
顯示結(jié)果是:XXBYDZF
即用“X”替換“AABCDEF”中的“A”,“Y”替換“C”,“Z”替換“E”。這下明白了吧:)
注意如果“字符表達(dá)式3”中的字符少于“字符表達(dá)式2”中的字符數(shù),那么“字符表達(dá)式1”與“表達(dá)式2”中多余的字符相匹配的字符將被刪除,怎么講起來總象繞口令,還是看例子:
? CHRTRAN(’AABCDEF’, ’ACE’, ’XY’)
顯示結(jié)果是:XXBYDF,“E”被刪掉,或者說“XY”中第3個(gè)字符是空字符,“E”被這個(gè)空字符替換了。
說明
另有一個(gè)函數(shù) CHRTRANC(),主要用于雙字節(jié)的字符,如字符串中有中文,使用這個(gè)函數(shù)。
========================================================================
請(qǐng)問,VFP中有沒有字符串替換函數(shù)
[ 來源:ITWENKU 時(shí)間:2006-9-21 20:03:18 | 瀏覽:12人次 ]
例如:
s = abc
s = replace(s, "b", "x")
? s
s輸出axc
CHRTRAN(), 替換字符,如CHRTRAN("123456", "135", "ABC") ==> "A2B4C6"
STRTRAN(),替換字符串,如STRTRAN("123456", "123", "112233") ==> "112233456"
s = STRTRAN(s, "b", "x")
UP
其實(shí)strtran可以替代chrtran,vfp中string和chr不是分得很清晰.
strtran可以替代chrtran?
STRTRAN()是替換整個(gè)字符的,CHRTRAN()是一個(gè)一個(gè)字符替換的,某些時(shí)候相同,但兩個(gè)函數(shù)面向不同的用途。
s = "1,2,3,4,5"
STRTRAN(s, ",", "-")
CHRTRAN(s, ",", "-")
此時(shí)是相同的,但此時(shí)應(yīng)該用CHRTRAN()
s = "{1},{2},{3},{4},{5}"
CHRTRAN(s, "{}", "[]")可以將上面的字符串轉(zhuǎn)換成"[1],[2],[3],[4],[5]",而STRTRAN()就做不到
s = "12345"
STRTRAN(s, "12345", "ABCDE")
CHRTRAN(s, "12345", "ABCDE")
此時(shí)兩者結(jié)果相同,但運(yùn)行機(jī)理是不同的,此時(shí)應(yīng)該用STRTRAN()
s = "1 1 1" && 內(nèi)含一個(gè)半角空格和一個(gè)全角空格
此時(shí)可用CHRTRANC(s, " ", "")將其中的“空格”去掉,不管全角還是半角