资源预览内容
第1页 / 共37页
第2页 / 共37页
第3页 / 共37页
第4页 / 共37页
第5页 / 共37页
第6页 / 共37页
第7页 / 共37页
第8页 / 共37页
第9页 / 共37页
第10页 / 共37页
第11页 / 共37页
第12页 / 共37页
第13页 / 共37页
第14页 / 共37页
第15页 / 共37页
第16页 / 共37页
第17页 / 共37页
第18页 / 共37页
第19页 / 共37页
第20页 / 共37页
亲,该文档总共37页,到这儿已超出免费预览范围,如果喜欢就下载吧!
点击查看更多>>
资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,SETEXACTON|OFF的进一步说明,参数ON,指定相等的表达式必须是,每个字符都相匹配,。,比较时,忽略表达式结尾的空格。,参数OFF,(默认值),必须是,右端表达式结尾前的每个字符,都相匹配,才是相等的表达式。备注,SETEXACT设置值对于相等长度的字符串没有任何作用。,1,SETEXACTON|OFF的进一步说明参数ON,例如:,(1),set exact off,?abcd=abc,?abc=abcd,?abc=abc,?abcd=abc,(2),set exact on,?abcd=abc,?abc=abc,?abc=abc,2,例如:2,3.3.2 字符函数,(参数C,或函数结果C),1,字符串长度函数,LEN(),N,【格式】,LEN(),【功能】,返回,c,Exp串包含的字符,个数,(长度)。,如:,?LEN(Visual FoxPro程序设计),21,2大小写转换函数,LOWER(),和,UPPER(),C,【格式】,LOWER(),UPPER(),【功能】,LOWER()将cExp串中字母,全部变成小写字母,,,UPPER()将cExp串中字母,全部变成大写字母,,,其它字符不变。,如:,?LOWER(Visual FoxPro程序设计),v,isual,f,ox,p,ro程序设计,3,3.3.2 字符函数(参数C,或函数结果C)3,3空格函数,SPACE(),C,【格式】,SPACE(),【功能】,返回一个包含,n,Exp个空格的字符串。,例如:,?“姓名”+SPACE(4)+”性别”,姓名 性别,4删除字符串前后空格函数 C,【格式】,TRIM(),LTRIM(),ALLTRIM(),【功能】,TRIM()删除,c,Exp串的,尾部的,空格字符。,LTRIM()删除,c,Exp串的,前导,空格字符。,ALLTRIM()删除,c,Exp串的,前导和尾部,的空格字符。,4,3空格函数 SPACE()C4,5取子串函数,LEFT()、RIGHT()、SUBSTR(),C,【格式】,LEFT(,),RIGHT(,),SUBSTR(,),【功能】,LEFT()返回从CExp串的,左边,截取,NExp个,字符的子串。,RIGHT()返回从CExp串的,右边,截取,NExp个,字符的子串。,SUBSTR()返回从串CExp中第,N1,个字符开始,截取,N2,个字符的子串。,5,5取子串函数LEFT()、RIGHT()、SUBSTR,例如:,?LEFT(123456789,4),LEFT(外贸财会,4),1234 外贸,?RIGHT(123456789,4),RIGHT(青岛大学,2),6789 学,ss=青岛大学,?,SUBSTR(ss,5),SUBSTR(ss,5,0),SUBSTR(青岛大学,9),大学,6,例如:6,6计算子串出现次数函数,OCCURS(),N,【格式】,OCCURS(,),【功能】,返回,串1在串2中的出现的次数,,函数值为,整数,。,如果串2不包含串1,函数返回值为零。,说明:,若串1是串2的其中一部分,则称串1是串2,的一个子串,例如:,STORE “abcaregtraf”TO S,?OCCURS(“a”,S),OCCURS(“r”,S),3 2,7,6计算子串出现次数函数OCCURS()N7,7求子串位置函数 N,【格式】,AT(,),ATC(,),【功能】,AT()返回串1在串2中的起始位置,函数值为,整数,。,如果串2,不包含,串1,函数返回值为,零,。,ATC()功能与AT()类似,只是,不区分大小写,例如:,?AT(“is”,”this is a book.”,2),?AT(“Is”,”this is a book.”),?ATC(“Is”,”this is a book.”),6 0 3,8,7求子串位置函数 N8,8子串替换函数,STUFF(),C,【格式】,STUFF(,),【功能】,用C2串替换C1串中从N1指定位置开始的 N2个字符。即,从C1的第N1个字符开始删去N2个字符,并将C2插在该位置上。,说明:,若N2=0,则只插入不删除;,若C2是空串,则只删除不插入。,例如:,ss=ABCDEF,?STUFF(ss,3,3,123),STUFF(ss,2,0,*),AB123F A*BCDEF,?STUFF(ss,2,3,),STUFF(ss,8,3,*),AEF ABCDEF*,9,8子串替换函数STUFF()C9,9字符串替换函数,CHRTRAN(),C,【格式】,CHRTRAN(,),【功能】,当C1串中的一个或多个字符与C2串中的某个字符相匹配时,就用C3串中,对应字符,(相同位置)替换这些字符。,说明:,若C3串包含的字符个数,少于,C2串中包含的字符个,数,则,C1串中相匹配的字符被删除,。,若C3串,多于,C2串,,多余字符被忽略,。,例如:,X1=CHRTRAN(ABACAD,ACD,X12),Y1=CHRTRAN(计算机ABC,计算机,电脑),Z1=CHRTRAN(大家好!,大家,多数人),?X1,Y1,Z1,XBX1X2 电脑ABC 多数好!,10,9字符串替换函数 CHRTRAN()C10,10字符匹配函数,LIKE(),L,【格式】,LIKE(,),【功能】,比较两个字符串对应位置上的字符,若所有对应,字符都相匹配,则函数返回.T.,否则函数返,回.F.。,说明:,中可包含通配符?和*。,例如:,X=“abc”,Y=“abcd”,?LIKE(“,ab*,”,X),LIKE(“,ab*,”,Y),LIKE(,X,Y),LIKE(“,Abc,”,X),.T.T.F.F.,11,10字符匹配函数 LIKE()L11,11将字符转换成ASC,码的,函数,ASC(),-N,【格式】,ASC(),【功能】,给出指定字符串最左边的一个字符的ASC,码值。,12将ASC,码值,转换成相应字符函数,CHR(),-C,【格式】,CHR(),【功能】,将数值表达式的值作为ASC,码,给出所对应的字符,12,11将字符转换成ASC码的函数 ASC()-N12,课堂练习,一、填空:,1、LEN(“北京-NBCH”)=_,2、AT(abc,DFABCLN)=_,3、SUBSTR(“Its a book”,8)=_,4、A=Good Bye B=“LI MING”,STUFF(A,6,3,B)=_,5、m=“XYZ12”,LIKE(“?12”,m)=_,LIKE(“*12”,m)=_,6、LEFT(“北京-NBCH”,4)=_,13,课堂练习一、填空:13,假设S1=重庆计算机基础学会,(1)从字符串S1中分别取出字符串“重庆”、“计算机”、“学会”;,?left(s1,4),substr(s1,5,6),right(s1,4),(2)分别测试字符串“计算机”、“计算机学会”在字符串S1中的起始位置。,?at(计算,s1),at(计算机学会,s1),(3)测试字符串“学会”在字符串“重庆计算机基础学会是西南地区计算机基础研究学会”第二次出现的位置;,?at(学会,重庆计算机基础学会是西南地区计算机基础研究学会,2),(4)将字符串S1中的“重庆”改成“西部地区”;,?stuff(s1,1,4,西部地区),(5)将字符串S1中的“基础”去掉;,?stuff(s1,11,4,),(6)在字符串S1的前后各加5个星号;,?*+s1,14,假设S1=重庆计算机基础学会14,假设S2=abCD34fgS(其中“”表示空格),(1)分别删除字符串S2的首部空格、尾部空格、首尾的所有空格;,(2)将字符串S2中所有字母分别转换为大写字母、小写字母;,?ltrim(s2);?trim(s2);?alltrim(s2),?lower(s2);?upper(s2),(3)分别测试字符串A,ABC的ASC码。,(4)输出比“Z”的ASCII小20的字符,。,?asc(A);?asc(ABC),?chr(asc(Z)-20),15,假设S2=abCD34fgS(其中“”表示,3.3.3 日期和时间函数,(参数D,或结果D),日期时间函数是处理日期型或日期时间型数据的函数。其自变量为日期型表达式,dExp,或日期时间型表达式,tExp,。,1系统日期和时间函数,【格式】,DATE(),返回当前系统日期,D,TIME(),返回当前系统时间,格式为hh:mm:ss。,C,DATETIME(),返回当前系统日期时间,T,16,3.3.3 日期和时间函数(参数D,或结果D)16,2求年份、月份和天数函数 N,【格式】,YEAR(),MONTH(),DAY(),【功能】,YEAR()返回,D|T,中的,年份值,。(如:2004),MONTH,()返回,D|T,中的,月份数,。,DAY()返回,D|T,中的,天数,。,例:,?YEAR(DATE(),YEAR(1999/12/23+20),2010 2000,?DATE(),MONTH(DATE(),DAY(2010/05/08+20),17,2求年份、月份和天数函数 N17,3时、分和秒函数 N,【格式】,HOUR(),MINUTE(),SEC(),【功能】,HOUR()返回,T,中的小时部分。,MINUTE,()返回,T,中的分钟部分。,SEC()返回,T,中的秒数部分。,例:,T=2004-12-31 10:15:36 p,?HOUR(T),MINUTE(T),SEC(T),22 15 36,18,3时、分和秒函数 N18,3.3.4 数据类型转换函数,7,在数据库应用的过程中,经常要将不同数据类型的数据进行相应转换,满足实际应用的需要。,1,数值转换成字符串的函数,STR(),C,【格式】,STR(,),【功能】,将N1的数值转换成长度为N2,小数位数为N3,的字符串形式。,N型C型,说明:,转换以后的长度,默认值为10。,要保留的小数位数,默认值为0。,例如:,?“计算结果为:”+STR(1234.567,7,2),计算结果为:1234.57,19,3.3.4 数据类型转换函数,2字符型转换成数值型函数,VAL(),N,【格式】,VAL(),【功能】,将C串中数字转换成对应数值,C型N型,说明:,转换结果取两位小数。,遇到非数字字符即停止转换。,例如:,?VAL(2360),VAL(12*4),VAL(56.345.8),2360.00 12.00 56.35,?VAL(WIN95),0.00,20,2字符型转换成数值型函数VAL()N20,3字符型转换成日期货日期时间型函数 D,【格式】,CTOD(),D,CTOT(),T,【功能】,CTOD()把C串转换成对应日期型数据。,C型D型,CTOT()把C串转换成对应日期时间型数据。,C型T型,例如:,?CTOT(“09/10/2003 20:09:52),09/20/03 20:09:52,注意:,字符表达式应与,所设置的日期格式,相同,否则出错。,21,3字符型转换成日期货日期时间型函数 D21,4日期或日期时间型转换成字符型函数,【格式】,DTOC(,1),C,TTOC(,1),C,【功能,】把日期D或日期时间T转换成相应的字符串。,D/T型C型,说明:,选1时,DTOC(),函数的输出格式是,YYYYMMDD,,共8个字符;,TTOC(),函数的输出格式是,YYYYMMDDHHMMSS,,共14个字符.,22,4日期或日期时间型转换成字符型函数22,例如:,C1=DTOC(DATE(),&将系统日期转换成字符串,并放入内存变量C1,C2=DTOC(DATE(),1,),&指定转换成的字符串格式为YYYYMMDD,?C1,C2,03/22/10 20100322,?TTOC(DATETIME(),?TTOC(DATETIME(),1),23,例如:23,(1)输出当前的系统日期、系统时间
点击显示更多内容>>

最新DOC

最新PPT

最新RAR

收藏 下载该资源
网站客服QQ:3392350380
装配图网版权所有
苏ICP备12009002号-6