linux把时间类型值转换为数值型字符及字符串处理函数:字符及字符串处理函数的处理对象均为,但其返回值类型各异.
1.取⼦串函数:
格式:substr(c,n1,n2)
功能:取字符串C第n1个字符起的n2个字符.返回值类型是字符型.
例:取姓名字符串中的姓.
store "" to xm
substr(xm,1,2)
结果为:王
2.删除空格函数:以下3个函数可以删除字符串中的多余空格,3个函数的返回值均为字符型.
trim(字符串):删除字符串的尾部空格
c++求字符串长度alltrim(字符串):删除字符串的前后空格
ltrim(字符串):删除字符串的前⾯的空格
例:去掉第⼀个字符串的尾空格后与第⼆个字符串连接
store "abcd " to x
store "efg" to y
trim(x)+y
abcdefg
3.空格函数:
格式:space(n)
说明:该函数的功能是产⽣指定个数的空格字符串(n⽤于指定空格个数).
例:定义⼀个变量dh,其初值为8个空格
store space(8) to dh
4.取左⼦串函数:
格式:left(c,n)
功能:取字符串C左边n个字符.
5.取右⼦串函数:
格式:right(c,n)
功能:取字符串c右边的n个字符
例:a="我是中国⼈"
right(a,4)
国⼈
left(a,2)
我
7.求⼦串位置函数:
格式:At(字符串1,字符串2)
功能:返回字符串1在字符串2的位置
例:?At("教授","副教授")
2
8.⼤⼩写转换函数:
格式:
lower(字符串)
upper(字符串)
功能:lower()将字符串中的字母⼀律变⼩写;upper()将字符串中的字母⼀律变⼤写
例:
bl="FoxBASE"
lower(bl)+space(2)+upper(bl)
foxbase FOXBASE
9.求字符串长度函数:
格式:len(字符串)
功能:求指定字符串的长度
例:a="中国⼈"
len(a)
6
⼆.数学运算函数:
1.:
格式:int(数值)
功能:取指定数值的整数部分.
例:取整并显⽰结果
int(25.69)
25
2.四舍五⼊函数:
格式:round(数值表达式,⼩数位数)
功能:根据给出的四舍五⼊⼩数位数,对数值表达式的计算结果做四舍五⼊处理
例:对下⾯给出的数四舍五⼊并显⽰其结果
round(3.14159,4),round(2048.9962,0),round(2048.9962,-3)
3.1416 2049 2000
3.求平⽅根函数:
格式:sqrt(数值)
功能:求指定数值的算术平⽅根
例:?sqrt(100)
10
4.最⼤值、最⼩值函数:
格式:
Max(数值表达式1,数值表达式2)
Min(数值表达式1,数值表达式2)
功能:返回两个数值表达式中的最⼤值和最⼩值
例:
x1=123.456
x2=234.567
123.456
5.求余数函数:
格式:mod(表达式1,表达式2)
功能:求表达式1对表达式2的余数
例:
mod(10,3)
1
6.求指数、:
格式:
exp(数值表达式)
log(数值表达式)
功能:
(1).exp()计算⾃然数e为底,表达式的值为指数的幂
(2).log()计算表达式值的⾃然对数,返回lnx的值.
例:
x=1
y=exp(x)
exp(x),log(x)
2.72 1
三.转换函数:
1.数值转数字:
格式:str(n,n1,n2)
功能:将数值n转换为字符串,n1为总长度,n2为⼩数位
例:?str(321.56)
322 隐含四舍五⼊取整转换为
str(321.56,6,2)
321.56
2.字符转数值函数:
格式:val(s)
功能:将数字字符串s转换为数值
例:x="23"
y="76"
val(x)+val(y)
100
3.字符转:
格式:ctod(c)
功能:将⽇期字符串c转换为⽇期
例:set date ansi ⽇期格式设为美国标准化协会格式
ctod("^2005.11.14")
2005.11.14
4.⽇期转字符函数:
格式:dtoc(d)
功能:将⽇期d转化为⽇期字符串
例:将⽇期型数据转化为字符型⽇期数据并显⽰汉字⽇期.
set century on 开启世纪前缀,即⽇期中年份⽤4位表⽰
set date ansi
rq={^2005.11.14}
rq=dtoc(rq)
substr(rq,1,4)+"年"+substr(rq,6,2)+"⽉"+substr(rq,9,2)+"⽇"
2005年11⽉14⽇
5.时间转字符函数:
格式:ttoc(时间)
功能:将时间转为时间字符串
6.字符转时间函数:
格式:ctot(c)
功能:将时间字符串转化为时间
7.字符串替换函数:
格式:stuff(字符表达式1,起始位置,字符个数,字符表达式2)
功能:从指定位置开始,⽤表达式2的值去替换表达式1中指定个数字符.若字符个数为零,直接插⼊;若表达式2为,则删除表达式1中指定个数的字符.例:X="祝⼤家新年好!"
stuff(X,7,4,"春节")
祝⼤家春节好
stuff(X,11,0,"春节")
祝⼤家新年春节好
stuff(x,7,4," ")
祝⼤家好
8.字符转ASCⅡ码函数:
格式:Asc(字符表达式)
功能:把字符表达式左边第⼀个字符转成相应的ASCⅡ码值
例:x="Foxpro"
Asc(x),Asc(lower(x))
70 102
9.ASCⅡ码值转字符函数:
格式:chr(数值表达式)
功能:把数值转成相应的ASCⅡ码字符,返回值为字符型
例:?chr(70)+chr(111)+chr(111+9)
Fox
四.:
1.系统:
格式:date()
功能:给出系统的当前⽇期,返回值是⽇期型数据.
set date ansi
set century on
date()
2005.11.14
2.年、⽉、⽇函数:
格式:(1).year(⽇期表达式):从⽇期表达式中返回⼀个由四位数字表⽰的年份.
(2).month(⽇期表达式):从⽇期表达式中返回⼀个⽤数字表⽰的⽉份.
(3).day(⽇期表达式):从⽇期表达式中返回⼀个⽤数字表⽰的⽇数.
例:测试系统⽇期
rq=date()
year(rq),month(rq),day(rq)
2005 11 14
3.系统时间函数:
格式:time()
功能:得到当前时间字符串
例:?time()
20:32:26
4.系统⽇期时间函数:
格式:datetime()
功能:得到当前⽇期时间
例:?datetime()
2005.11.14 08:35:12 PM
5.星期函数:
格式:dow(⽇期表达式)
cdow(⽇期表达式)
功能:dow⽤数字表⽰星期,1表⽰星期⽇,7为星期六;cdow⽤英⽂表⽰星期
例:?date()
2005.11.15
dow(date()),cdow(date())
3 Tuesday
五.测试函数:
1.测试⽂件尾函数:
格式:eof([n])
说明:
(1).n指定被测⼯作区号,其范围为1~32767
(2).该函数⽤于测试指定⼯作区中的表的是否指向⽂件尾,是则返回真值;否则返回假值;省略可选项指当前⼯作区.例:测试⽂件是否指向⽂件尾
use
go bottom
eof()
.F.
skip
eof()
.T.
2.测试⽂件头函数:
格式:bof([n])
说明:
(1).n指定被测⼯作区号,其范围为1~32767
(2).⽤于测试指定⼯作区中的表的是否指向⽂件头,是则返回真值;否则返回假值;省略可选项指当前⼯作区.
例:测试记录指针是否指向⽂件头
use
go top
bof()
.f.
skip -1
bof()
.t.
3.测试当前记录号函数:
格式:recno()
功能:得到当前的记录号
例:
use
recno()
1
skip
recno()
2
4.测试表⽂件记录数函数:
格式:reccount()
功能:得到表的记录数
例:测试"职⼯档案"表的记录数
use 职⼯档案
reccount()
5
5.测试表字段数函数:
格式:fcount()
功能:得到当前的字段数
例:测试"职⼯档案"表共有多少个字段
use 职⼯档案
fcount()
9
6.测试查记录是否成功函数:
格式:found()
功能:测试find、seek和locate命令查记录是否成功.如成功则返回真值,否则为假值.
例:在"职⼯档案"表中查""的⽂化程度
use 职⼯档案
locate for 姓名="⼩刚"
found()
.t.
display
7.⽂件测试函数:
格式:file(字符表达式)
功能:测试字符表达式指定的⽂件是否存在
例:?file("e:\myvfp\职⼯档案.dbf")
.
t.
8.数据类型测试函数:
格式:type(字符表达式)
功能:测试表达式的数据类型,返回⼤写字母:N(数值)、C(字符)、L(逻辑)、D(⽇期)、M(备注)
例:
x=1236
y="hello"
type("x")
N
type("y")
C
9.测试⼯作区函数:
格式:select()
功能:返回当前⼯作区的区号
10.测试别名函数:
格式:alias()
功能:测试当前⼯作区的别名
例:
select 1
use 职⼯档案 alias zgda
select 2
use ⼯资情况
alias()
⼯资情况打开表时,不指定别名,表名即为别名
select zgda 通过别名选择⼯作区
select()
1
11.表⽂件名函数:
格式:dbf()
功能:返回当前⼯作区打开的表名
例:
use ⼯资情况
dbf()
e:\myvfp\⼯资情况
六.其它函数:
1.宏替换函数:
格式:变量名
说明:vfp中只有宏替换函数没有括号.功能是返回指定字符型变量中所存放的字符串.
例:为"⼯资情况"表中每个⼈加100元⼯资
gz="⼯资"
use ⼯资情况
replace all gz with gz+100
2.条件函数:
格式:iif(表达式,表达式1,表达式2)
功能:若表达式值为真,则返回表达式1的值;否则返回表达式2的值;函数返回值类型与表达式1或表达式2类型⼀致a=3
b=5
iif(ab,"⾼兴","开⼼")
开⼼
3.消息框函数:
格式:messagebox(提⽰⽂本[,对话框类型[,对话框标题⽂本]])
功能:显⽰提⽰对话框
说明:
(1)对话框类型:
对话框类型功能
0 仅"确定"按钮
1 "确定"和"取消"按钮
2 "终⽌","重试"和"忽略"按钮
3 "是","否"和"取消"按钮
4 "是"和"否"按钮
5 "重试"和"取消"按钮
16 stop图标
32 ?图标
48 !图标
64 i图标
0 默认第1个按钮
256 默认第2个按钮
512 默认第3个按钮
(2).返回值:
返回值按钮
1 确定
2 取消
3 终⽌
4 重试
5 忽略
6 是
7 否
例:分析messagebox("您确实要退出系统吗?",4+64,"提⽰信息")会弹出什么样的窗⼝.
分析:回头观察此函数的格式,弹出的对话框中的提⽰⽂本是"您确实要退出系统吗",对话框标题是"提⽰信息",函数中间有"4+64",其中4指定对话框中出现"是"和"否"两个按钮(见表1),64指定对话框中出现i图标(见表2) ok,我们在命令窗⼝依次执⾏下列命令:
tui=messagebox("您确实要退出系统吗?",4+64,"提⽰信息")
变量tui⽤于接收messagebox函数的返回值,弹出的窗⼝如图1
tui
变量tui值取决于运⾏时⽤户点了哪个按钮,如果点了"是",返回6,如果点了"否",返回7,见表2
说明:实际应⽤中,我们常在系统菜单或在表单的"退出"按钮中添加如下代码:
tui=messagebox("您确实要退出系统吗?",4+64,"提⽰信息")
if tui=6 如果此条件成⽴,说明⽤户点了"是"按钮,执⾏quit命令,安全退出
quit
endif
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论