处理字符串和日期时间.ppt
《处理字符串和日期时间.ppt》由会员分享,可在线阅读,更多相关《处理字符串和日期时间.ppt(66页珍藏版)》请在三一办公上搜索。
1、第9章 处理字符串和日期时间,Visual Basic 程序设计教程,Visual Basic程序设计教程,2,本章主要介绍:字符类型和字符数组操作字符串查找和替换字符串处理日期和时间使用VB的日历控件MonthView,Visual Basic程序设计教程,3,9.1 概述,在大量的应用系统中,文本是表达和交互数 据的基本类型,而文本的计算机内部表示就 是字符数据类型 学会运用VB提供的内部函数,包括比较字符 串和搜索字符串,以及在字符串和其他数据 类型之间的转换等,Visual Basic程序设计教程,4,往往应用程序中需要有日期和时间的相关信息,这就涉及到程序如何表达以及如何使用 合适的
2、格式表达程序中对日期时间的处理要 求,Visual Basic程序设计教程,5,9.2 一个简单的字符加密处理程序,【例9-1】一个简单的示例程序,把给出的字符进行加密,然后再解密,程序界面如图所示:,Visual Basic程序设计教程,6,Dim Str1 As String,Str2 As String Option Compare Text Private Sub CmdEncrypt_Click()Dim N As Byte,Count As Integer Text2.Text=N=Len(Text1.Text)For Count=1 To N Str1=Mid(Text1.Tex
3、t,Count,1)If(Count Mod 2)=0 Then Text2.Text=Text2.Text&ChrW(AscW(Str1)+2)Else Text2.Text=Text2.Text&ChrW(AscW(Str1)+1)End If Next End Sub,Private Sub Form_Load()Label1.Caption=请输入:Label2.Caption=加密后输出:Label3.Caption=解密后输出 Text1.Text=Text2.Text=Text3.Text=End Sub,Visual Basic程序设计教程,7,Private Sub CmdU
4、ncoil_Click()Dim N As Byte,Count As Integer Text3.Text=N=Len(Text2.Text)For Count=1 To N Str1=Mid(Text2.Text,Count,1)If Count Mod 2=0 Then Text3.Text=Text3.Text&ChrW(AscW(Str1)-2)Else Text3.Text=Text3.Text&ChrW(AscW(Str1)-1)End If Next End Sub,Visual Basic程序设计教程,8,9.3 字符类型和字符数组,本节在小结前述章节的有关字符数据类型的基础
5、上,进一步介绍有关字符运算、字符数组和实现。各种字符操作和字符转换、类型转换的VB函数。,Visual Basic程序设计教程,9,9.3.1 字符和字符串1字符数据类型VB的字符类型数据支持两种格式,一种是定长,另一种是不定长。如:Dim Str1 As StringDim Str2 As String*长度数值在VB中,变长字符串最多可包含大约20亿(231)个字符,而定长字符串可包含1到大约 64K(216)个字符。,Visual Basic程序设计教程,10,2字符连接运算VB使用符号“&”和“+”连接字符串形成更大的字符串。(1)如果连接运算符的两边都是字符型数据,这两个符号都可以使
6、用。(2)如果把不同类型的数据连接为字符串,使用连接符“&”。建议使用“&”连接符,可以避免出现类型不匹配的错误。例:Str1=“Hell”+“World”Str1中的字符为“Hello World”Str1=”Hello”+2 运行时产生,类型不匹配错误,应该使用&代替,Visual Basic程序设计教程,11,比较字符1使用比较运算符 理解一个字符“大于”、“小于”或者“等 于”的含义,是考虑字符在字符表中位置后决 定的。它们按照ASCII码对字符进行排序,然后 比较它们的代码值的大小决定比较结果。,Visual Basic程序设计教程,12,Dim Str1 As String,Str
7、2 As String Str1=A:Str2=B Print Str1=Str2 比较结果为False,因为字符“A”和“B”不相等 Print Str1 Str2 比较结果为True,因为“abc”“VB6”成立 Print Str1 Str2 比较结果为False,因为“abc”“VB6”不成立,Visual Basic程序设计教程,13,2StrComp函数 函数StrComp用来比较两个字符串,并返回比较结果。使用格式为:StrComp(String1,String2,CompareType)比较结果的返回值如下:,Visual Basic程序设计教程,14,CompareType参
8、数意义如下表所示:,Visual Basic程序设计教程,15,9.3.3 String函数和Str函数1String函数使用格式:String(Number,Character)函数执行后按创建长度返回重复字符的字符串,其中,Number给出所创建的字符串长度。参数Character是一个字符(或Ascii码)或字符串表达式,但只使用它的第一个字符创建新的字符串,如果Character包含了Null就返回Null。,Visual Basic程序设计教程,16,例:Dim str1 as string,str2 as string,str3 Str1=String(5,“*”)返回*。Str2
9、=String(5,42)ASCII 码42的字符为*,返回*。Str3=String(10,“ABC”+Null)返 回 Null。,Visual Basic程序设计教程,17,2Str函数函数Str把一个数值转换为Variant(String)类型。它的使用格式为:Str(Number)例:Str1=Str$(123.5)Str2=Str(-123.5)Print Str1,Str2 输出 123.5,-123.5 注意字符串前有一个空格和符号位,Visual Basic程序设计教程,18,9.3.4 字符数组 字符数组就是数组中的元素都是字符串的数组,使用String定义字符数组。有关字
10、符串数组操作的三个函数如下:1Join函数Join函数连接某个数组中的多个子字符串而创建一个新的字符串。函数格式为:Join(List,Delimiter),Visual Basic程序设计教程,19,其中参数List指出被连接的字符数组Delimiter是可选参数,在返回字符串中用于分隔子字符串的字符。默认使用空格 来分隔子字符串。如果Delimiter是零长度字符串,所有元素项都连接在一起,中间没有分隔符。,Visual Basic程序设计教程,20,例如:Dim StrA(2)As String,Str1 As String StrA(0)=欢迎来到 StrA(1)=Visual Str
11、A(2)=Basic 6 Str1=Join(StrA)连接字符数组StrA中三个字符串,Visual Basic程序设计教程,21,2Split函数 给定一个字符串,可以使用Split函数创建一个一维数组,它包含指定数目的子字符串。函数格式为:Split(StringExpress,Delimiter,Count,CompareType),Visual Basic程序设计教程,22,【例9-2】使用Split函数。程序执行后的显示如图所示。程序代码如下:Private Sub Form_Load()Dim x()As String Dim y As String,n As Integer S
12、how y=Welcome To Visual Basic 6!x=Split(y)For n=LBound(x)To UBound(x)Print&x(n)Next End Sub,Visual Basic程序设计教程,23,3Filter函数。从一个已知数组中搜索指定的字符串,可以使用Filter函数,ilter函数的格式为:Filter(StringsArray,Value,Include,CompareType),Visual Basic程序设计教程,24,【例9-3】请从数组A中选出包 括“VB”和不包括“VB”的元 素。程序执行后的显示如图所示。,Visual Basic程序设计教
13、程,25,Private Sub Form_Load()Show Dim A(6)As String,B()As String,C()As String A(0)=C:A(1)=VB6:A(2)=C+A(3)=Jave:A(4)=VB5:A(5)=MS.Net Print 数组 A 中所有的字符串元素有:Call Prt(A)B()=Filter(A,VB)Print 数组A中包含有VB字符的元素有:Call Prt(B)C()=Filter(A,VB,False)Print 数组A中不包含VB字符的元素有:Call Prt(C)End Sub,Private Sub Prt(m()As St
14、ring)For n=0 To UBound(m)Print&m(n)Next PrintEnd Sub,Visual Basic程序设计教程,26,9.4 操作字符串,本节给出VB处理字符串的常用操作,如取单个字符、取其中指定的字符、去除字符串中的空格和转换函数。,Visual Basic程序设计教程,27,9.4.1 Like运算符 比较运算符Like用于比较字符串。Like返回一个逻辑值:True表示被比较的两个字符串相匹配,False表示不匹配。使用格式为:Result=String1 Like Pattern VB根据模式匹配可以使用通配符来匹配字符串。也就是说使用Windows中的
15、?、*和三个匹配符:?表示任何单一字符,*表示零个或多个字,Visual Basic程序设计教程,28,*表示零个或多个字符,#表示任何一个数字(09)。例如有Str1=“Hello World”,则表达式 Str1 Like“Hello World”Str1 Like“Hello*”Str1 Like“Hello?”返回的结果为都为True。,Visual Basic程序设计教程,29,9.4.2 使用Mid操作字符串中的字符操作字符串中的单个或者多个字符,一般情况下使用Mid函数或者Mid语句。关键字Mid在VB中既是函数也是语句。1Mid函数 Mid函数的格式如下:Mid(String1
16、,Start,Length)参数String1是被操作的字符串,Start为一个数字,指示从String1中的字符起始位置,Length是可选参数,指示要返回的字符数,如果不指定则从Start开始往后的所有字符。例如:Mid(“Hello”,2,1)返回字符e,Visual Basic程序设计教程,30,2Mid语句 Mid是作为语句使用,Mid出现在赋值号的左边,格式 为:Mid(String1,Start,Length)=String2 用String2字符串代替String1从Start位置开始的字 符,可选参数Length为替换的长度。注意,字符串 String2的长度总是小于等于Le
17、ngth。假设我们已经定 义了MyStr=Visual Basic,则:Mid(Str1,8)=C+执行的结果使得Str1中的字符串为“Visual C+”(包括后面的两个空格)。,Visual Basic程序设计教程,31,9.4.3 使用Left、Right和InStr操作字符串 1Left函数使用Left函数选择字符串左边起到指定位置的部分。例如:Str1=“Visual Basic”Str2=Left(Str1,6)2Right函数使用Right函数选择字符串的右边部分。例如:Str1=“Visual Basic”Str2=Rightt(Str1,5),Visual Basic程序设计
18、教程,32,3InStr函数使用格式为:InStr(Start,String1,String2)可选参数Start为开始进行搜索的位置,默认为1表示从头开始。String1为基字符串,String2为搜索字符串,InStr在String1中搜索是否包含String2字符串。返回结果为数字,0表示没有找到,非0表示返回String2在String1中出现的第一个起始位置 假设Str1=”Visual Basic”,Str2=”Basic”,则执行语句:InStr(Str1,Str2)返回的结果为8,表示“Basic”在“Visual Basic”中的位置为8。,Visual Basic程序设计教
19、程,33,9.4.4 删除多余的空格 使用LTrim、RTrim与Trim函数得到一个字符串的拷贝,删除前导空格(LTrim)、删除尾随空格(RTrim)。Trim函数将两头空格全部去除,但不删除中间的空格。例:Dim MyString,TrimString MyString=VB6 TrimString=LTrim(MyString)TrimString=VB6 TrimString=RTrim(MyString)TrimString=VB6 TrimString=Trim(MyString)TrimString=VB6,Visual Basic程序设计教程,34,9.4.5 转换函数1As
20、c和Chr函数Asc是取一个字符的ASCII码的函数;Asc函数对单个的字符计算,如果给出的字符多于一个,它计算第一个字符的ASCII值。例如:Asc(”a”)得到的值为97 Chr是Asc的逆函数,它将一个数值转换为对应的字符,例如 Chr(97)返回的就是字母a。Chr(13)和Chr(10)就分别代表回车 和换行。,Visual Basic程序设计教程,35,2转换大小写函数UCase和LCase分别将字符串的字母转换为大写或小写。它们的使用方法比较简单:UCase(StringExpress)LCase(StringExpress)其中,StringExpress可以是字符串或者是字符
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 处理 字符串 日期 时间
链接地址:https://www.31ppt.com/p-6264776.html