首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

请教怎么提取字段中某一位置上的内容

2012-02-11 
请问如何提取字段中某一位置上的内容?请问各位前辈,如何把一个字段中排在第二或第三位一次类推,中的某一个

请问如何提取字段中某一位置上的内容?
请问各位前辈,如何把一个字段中排在第二或第三位一次类推,中的某一个数字或内容提取出来放在一个单独的字段中,或其他字段中的某一位置上?
        万分感谢!

[解决办法]
SUBSTR( ) 函数

从给定的字符表达式或备注字段中返回字符串,字符串从字符表达式或备注字段中指定位置开始,并延续指定的字符数。


SUBSTR(cExpression, nStartPosition [, nCharactersReturned])


 

参数
cExpression

指定要从中返回字符串的字符表达式或备注字段。
nStartPosition

指定字符表达式或备注字段 cExpression 中要返回字符串的位置。cExpression 中第一个字符的位置是 1。
注意:
如果 nStartPosition 大于 cExpression 中的字符数,SUBSTR( ) 会返回空串 ( " ")。
 


 

nCharactersReturned

指定要从 cExpression 中返回的字符数。如果省略了 nCharactersReturned,则返回字符表达式结束前的全部字符。
返回值
字符(Character)。SUBSTR( ) 返回字符串。

注意:
当在 Debug 窗口中发出 SUBSTR( ) 时,将不会备注字段的值。要在 Debug 窗口中返回值,请将备注字段名放置到 ALLTRIM( ) 中,再将 ALLTRIM( ) 放置到 SUBSTR( ) 中。
 


 

解释
当在 SQL SELECT 命令中与备注字段字段一起使用 SUBSTR( ) 时,请在 SUBSTR( ) 中包含 PADR( ) 函数,以便在转换为字符串时,空的或不同长度的备注字段产生同样的结果。

示例
下面的示例使用 STORE 命令将串“abcdefghijklm”储存到变量 myString 中。CLEAR 清除 Visual FoxPro 主窗口。从 nStartPosition = 1 指定的第一个字符开始,SUBSTR( ) 显示 nCharactersReturned = 5 指定的带有五个字符“abcde”的串。随后,SUBSTR( ) 显示 nStartPosition = 6 所指定的从串中第六个字符开始的串“fghijklm”,nCharactersReturned 值的省略指定直到字符表达式结束。

复制程序代码
STORE 'abcdefghijklm ' TO myString
CLEAR
? SUBSTR(myString, 1, 5)
? SUBSTR(myString, 6)

热点排行