求解VFP中substr函数

2025-03-01 10:02:34
推荐回答(3个)
回答1:

substr(字符串,m,n) 函数是将字符串,从m位开始,取n个字符出来
substr("abcdef",3,2)="cd"
substr("abcdef",2,4)="bcde"
参数n可省略,表示从m位开始取到字符串末尾
substr("abcdef",3)="cdef"
汉字占两位
SUBSTR()函数
VFP字符函数的一种。表示的是字符型函数。格式是:SUBSTR(<字符表达式>、<数值表达式1>[,<数值表达式2>]
语法格式一
SUBSTR(cExpression,nStartPosition [,nCharactersReturned])
其中,cExpression指定要从其中返回字符串的字符表达式或备注字段;nStartPosition用于指定返回的字符串在字符表达式或备注字段中的位置,nCharactersReturned用于指定返回的字符数目,缺省时返回字符表达式的值结束前的全部字符。
举例
STORE'abcdefghijklm' To mystring
?SUBSTR(mystring ,1,5) 显示 "abcde"
?SUBSTR(mystring ,6) 显示 "fghijklm"
?SUBSTR(mystring,-2)显示"lm"
?SUBSTR(mystrng,-4)显示"jklm"、
语法格式二
SUBSTR(char A,char B,int C, int D)
这个函数主要用于字符串的运算,参数A是字符数组或是指向字符串的指针,用于接收字符串,参数B一般也为字符数组或指向字符串的指针,表示要截取字符串的地方,参数C表示从B中截取字符串的起始位置,参数D表示要截取字符串的长度,缺省时返回字符表达式的值结束前B的全部字符。
上述表达式功能可描述为:从字符串B的第C个字符处开始,截取长度为D的一串字符串,放入字符串数组A中,返回截取的字符串。
举例: ch X S[]="abcdefgh" 调用substr(X,S,4,2)后,得到的结果是:"ef"

回答2:

substr(字符串,m,n) 函数是将字符串,从m位开始,取n个字符出来
substr("abcdef",3,2)="cd"
substr("abcdef",2,4)="bcde"
参数n可省略,表示从m位开始取到字符串末尾
substr("abcdef",3)="cdef"
汉字占两位

回答3:

substr("全国计算机等级考试",5,6)的结果是“计算机”三个字;
+right("全国计算机等级考试",4)的结果是“考试”两个字。因此整句的结果是计算机考试。