读书人

VFP 中有没有把字符串转换为数组的函数

发布时间: 2013-01-26 13:47:03 作者: rapoo

VFP 中有没有把字符串转换为数组的函数
比如:

sStr="A=b;C=d;e=f"

类似 VB split

把这个字符中分成
一维数组 A=B C=d E=f
或者是
二维数组。A B
C D
e f






[解决办法]
没有专用的,可以自己写代码。

*---VFP9.0代码
CLEAR
SSTR="A=B;C=D;E=F"
*---一维数组
LOCAL SJ(GETWORDCOUNT(SSTR,";")) && 定义一维数组
FOR I=1 TO GETWORDCOUNT(SSTR,";")
SJ(I)=GETWORDNUM(SSTR,I,";")
ENDFOR
LIST MEMORY LIKE SJ
*---二维数组
LOCAL SJ(GETWORDCOUNT(SSTR,";"),2) && 定义二维数组
FOR I=1 TO GETWORDCOUNT(SSTR,";")
S_STR=GETWORDNUM(SSTR,I,";")
FOR J=1 TO GETWORDCOUNT(S_STR,"=")
SJ(I,J)=GETWORDNUM(S_STR,J,"=")
ENDFOR
ENDFOR
LIST MEMORY LIKE SJ

[解决办法]
没有专用的,可以自己写代码。
*---VFP9.0代码
CLEAR
SSTR="A=B;C=D;E=F"
*---一维数组
LOCAL SJ(GETWORDCOUNT(SSTR,";")) && 定义一维数组
FOR I=1 TO GETWORDCOUNT(SSTR,";")
SJ(I)=GETWORDNUM(SSTR,I,";")
ENDFOR
LIST MEMORY LIKE SJ
*---二维数组
LOCAL SJ(GETWORDCOUNT(SSTR,";"),2) && 定义二维数组
FOR I=1 TO GETWORDCOUNT(SSTR,";")
S_STR=GETWORDNUM(SSTR,I,";")
FOR J=1 TO GETWORDCOUNT(S_STR,"=")
SJ(I,J)=GETWORDNUM(S_STR,J,"=")
ENDFOR
ENDFOR
LIST MEMORY LIKE SJ

[解决办法]
一维可以,二维需要你自己写循环处理

一维:
alines(aTemp, "A=b;C=d;e=f", 1+2+4, ';')
? aTemp[1], aTemp[2], aTemp[3]

读书人网 >VFP

热点推荐