《2022年vb_字符串处理函数大全 .pdf》由会员分享,可在线阅读,更多相关《2022年vb_字符串处理函数大全 .pdf(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、mid(字符串,从第几个开始,长度)ByRef在字符串 中从第几个开始取出 长度个字符串 例如mid( 坦然面对 ,1,3) 则返回坦然面 instr(从第几个开始,字符串 1,字符串 2)ByVal从规定的位置开始查找,返回字符串2 在字符串1 中的位置例如instr(1, 坦然面对 , 坦) 则返回1,instr(2, 坦然面对 ,坦),则返回0 。 0 表示未找到InStrRev(字符串 1,字符串 2,从第几个开始 ) ByVal 从规定的位置开始,从后住前查找, 返回字符串2 在字符串 1 中的位置,此处注意,虽是从后住前查找,但是返回的值还是从前往后算的。例如instrRev( 坦
2、然面对 , 坦,2) 则返回2 ; instrRev( 坦然面对 ,然,1) 则返回0 ,因为它从坦然面对 的第 1个字开始往前查找,所以找不到。0 表示未找到left(字符串 ,长度 ) ByVal 从 字符串 的左边开始返回长度 个字符例如Left( 坦然面对 ,3) 则返回坦然面 right(字符串 ,长度 ) ByVal 从字符串 的右边开始返回长度个字符例如Right( 坦然面对 ,3) 则返回然面对 ucase(字符串 ) ByVal 返回 字符串 的大写形式,只对英文字符有效例如ucase(tanRANmiAnDui) 则返回TANRANMIANDUI lcase(字符串 ) B
3、yVal 返回 字符串 的小写形式,只对英文字符有效例如lcase(tanRANmiAnDui) 则返回tanranmiandui asc(字符 ) Byval 返回 字符 的 ascii 编码, 若有多个字符, 则只返回首字符的ascii 编码 ,和 Chr()函数是一个可逆的过程例如asc(坦 ) 则返回-13127; asc(坦然面对 ) 也返回-13127chr(ASCii 编码 ) Byval 返回 Ascii 编码所代表的字符,和Chr()函数是一个可逆的过程例如chr(-13127) 则返回坦 ;chr(asc(坦) 则返回 坦(这里是为了说明asc和 chr 的可逆性,例用此特
4、性可以加密文本) trim( 字符串 ) Byval 返回去掉了前、后之后的字符串 例如trim(坦 然面对) 则返回坦 然面对 ,中间的空格不受任何影响string(个数 ,字符 ) Byval 返回 个数 个字符 例如string(3, 坦) 则返回坦坦坦 , 而 string(3, 坦然面对 ) 也返回坦坦坦 ,只有首字符才有效space(个数 ) Byval 返回 个数 个空格例如space(5) 则返回 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 -
5、 - - - - - - - - strconv(字符串 ,转换的类型 ) Byval 将字符串转成指定的类型。常用的类型只有两个,vbwide 半角转成全角 ,vbNarrow 全角转成半角例如strconv(tan,vbwide) 则返回 ,而 strconv( ,vbnarrow) 则返回tan 备注vbwide = 4 ,vbnarrow = 8 len(字符串 ) Byval 返回 字符串 的长度例如len(坦然面对 ) 则返回4以下内容特别感谢无私、博爱的yty 同学补充:AscB(String As String) As Byte返回字符串中第一个字节的值例如: AscB( 坦然
6、 )则返回 102AscW(String As String) As Integer返回字符串中第一个字符的本机字符代码(Unicode 或 ANSI)例如: AscW( 坦然 )则返回 22374ChrW(CharCode As Long)返回一个包含指定本机字符的字符串(Unicode 或 ANSI)例如: ChrW(22374) 则返回 坦Filter(InputStrings, Value, Include, Compare)返回一个下标从零开始的数组,该数组包含基于指定筛选条件的一个字符串数组的子集。InputStrings 必需的。要执行搜索的一维字符串数组。Value 必需的。要
7、搜索的字符串。Include 可选的。 Boolean 值,表示返回子串包含还是不包含Value 字符串。如果Include 是True, Filter 返回的是包含Value 子字符串的数组子集。如果Include 是 False,Filter 返回的是不包含 Value 子字符串的数组子集。Compare 可选的。数字值,表示所使用的字符串比较类型。有关其设置,请参阅下面的“ 设置值 ” 部分。Compare 参数的设置值如下:vbUseCompareOption 1 使用 Option Compare 语句的设置值来执行比较。vbBinaryCompare 0 执行二进制比较。vbTex
8、tCompare 1 执行文字比较。vbDatabaseCompare 2 只用于 Microsoft Access 。基于您的数据库信息来执行比较。例如:Dim a(3) As Stringa(0) = 坦a(1) = 坦然 a(2) = 坦然面 a(3) = 坦然面对 b = Filter(a, 然)则 b(0) = 坦然 b(1) = 坦然面 b(2) = 坦然面对 Join(list, delimiter) As String返回一个字符串,该字符串是通过连接某个数组中的多个子字符串而创建的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -
9、- - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - list 必需的。包含被连接子字符串的一维数组。delimiter 可选的。在返回字符串中用于分隔子字符串的字符。如果忽略该项,则使用空格( )来分隔子字符串。 如果 delimiter 是零长度字符串() , 则列表中的所有项目都连接在一起,中间没有分隔符。例如:Dim a(3) As Stringa(0) = 坦a(1) = 坦然 a(2) = 坦然面 a(3) = 坦然面对 b = Join(a, +)则 b = 坦+坦然 +坦然面 +坦然面对 LeftB(Strin
10、g, Length As Long)从一个字符串的左边起返回指定数目的字节例如:a = LeftB( 坦然面对 , 4)则 a = 坦然 LenB(Expression)返回存储一个变量所需的字节数例如: a = LenB( 坦然面对 )则 a = 8LTrim(String)返回无前导空格的字符串的备份RTrim(String)返回一个无后缀空格的字符串的备份例如:a = LTrim( 坦然面对)b = RTrim( 坦然面对)则 a = 坦然面对b = 坦然面对 MidB(String, Start As Long, Length)从一个字符串中返回指定数目的字节例如:a = MidB(
11、坦然面对 , 3, 4)则 a = 然面 MonthName(Month As Long, Abbreviate As Boolean = False) As String返回一个表示指定月份的字符串。abbreviate 可选的。 Boolean 值,表示月份名是否缩写。如果忽略,缺省值为False,表明月份名不能被缩写。例如:a = MonthName(5)则 a = 五月 Format(expression, format, firstdayofweek, firstweekofyear)返回Variant (String) ,其中含有一个表达式,它是根据格式表达式中的指令来格式化的。名
12、师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - expression 必要参数。任何有效的表达式。format 可选参数。有效的命名表达式或用户自定义格式表达式。firstdayofweek 可选参数。常数,表示一星期的第一天。firstweekofyear 可选参数。常数,表示一年的第一周。firstdayofweek 参数有下面设置:vbUseSystem 0 使用NLS API 设置。VbSunday 1 星期日(缺省)vb
13、Monday 2 星期一vbTuesday 3 星期二vbWednesday 4 星期三vbThursday 5 星期四vbFriday 6 星期五vbSaturday 7 星期六firstweekofyear 参数有下面设置:vbUseSystem 0 使用NLS API 设置。vbFirstJan1 1 从包含一月一日的那一周开始(缺省)。vbFirstFourDays 2 从本年第一周开始,而此周至少有四天在本年中。VbFirstFullWeek 3 从本年第一周开始,而此周完全在本年中。示例a = Format(#4/19/2008 1:01:05 PM#, yyyy-mm-dd,dd
14、d,hh:mm:ss)a = 2008-04-19,Sat,13:01:05a = Format(#4/19/2008 1:01:05 PM#, yyyy-mm-dd,dddd,h:m:s)a = 2008-04-19,Saturday,13:1:5a = Format(#4/19/2008 1:01:05 PM#, m -d-yy ampm h/m/s)a = 4-19-08 PM 1-1-5a = Format(1234567.89, #,#.#00)a = 1,234,567.890a = Format(0.12358, #%)a = 12%a = Format(0.12358, #.#
15、0%)a = 12.36%a = Format(0.12358, #.#000%)a = 12.3580%a = Format(TaNrAnMiAnDuI, )a = TANRANMIANDUIa = Format(TaNrAnMiAnDuI, )a = tanranmiandui总之, Format 功能很强大,可替代许多函数。FormatCurrency(Expression,NumDigitsAfterDecimal ,IncludeLeadingDigit ,UseParensForNegativeNumbers ,GroupDigits)返回一个货币值格式的表达式,它使用系统控制面板
16、中定义的货币符号。Expression 必需的。要格式化的表达式。NumDigitsAfterDecimal 可选的。数字值,表示小数点右边的显示位数。缺省值为1 ,表示使用计算机的区域设置值。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - IncludeLeadingDigit 可选的。三态常数,表示小数点前是否显示一个零。UseParensForNegativeNumbers 可选的。三态常数,表示是否把负数值放在园括号内。
17、GroupDigits 可选的。三态常数,表示是否用组分隔符对数字进行分组,组分隔符由计算机的区域设置值指定。IncludeLeadingDigit 、UseParensForNegativeNumbers 和 GroupDigits 参数的设置值如下:TristateTrue 1 True TristateFalse 0 False TristateUseDefault 2 使用计算机区域设置中的设置值。示例a = FormatCurrency(1234567.89)a = ¥1,234,567.89a = FormatCurrency(1234567.89, 0)a = ¥1,234,56
18、8a = FormatCurrency(1234567.89, 3)a = ¥1,234,567.890a = FormatCurrency(0.15, , vbFalse)a = ¥.15a = FormatCurreFormatDateTime(Date,NamedFormat)返回一个日期或时间格式的表达式。Date 必需的。要被格式化的日期表达式。NamedFormat 可选的。数字值,表示日期/时间所使用的格式。如果忽略该值,则使用vbGeneralDate。NamedFormat 参数的设置值如下:vbGeneralDate 0 显示日期和 /或时间。如果有日期部分,则用短日期格式
19、显示。如果有时间部分,则用长时间格式显示。如果都有,两部分都显示。vbLongDate 1 用计算机区域设置值中指定的长日期格式显示日期。vbShortDate 2 用计算机区域设置值中指定的短日期格式显示日期。vbLongTime 3 用计算机区域设置值中指定的时间格式显示时间。vbShortTime 4 用 24 小时格式( hh:mm)显示时间。示例a = FormatDateTime(#4/19/2008 2:54:23 PM#, vbGeneralDate)a = 2008-4-19 14:54:23a = FormatDateTime(#4/19/2008 2:54:23 PM#,
20、 vbLongDate)a = 2008 年 4 月 19 日星期六a = FormatDateTime(#4/19/2008 2:54:23 PM#, vbShortDate)a = 2008-4-19a = FormatDateTime(#4/19/2008 2:54:23 PM#, vbLongTime)a = 14:54:23a = FormatDateTime(#4/19/2008 2:54:23 PM#, vbShortTime)a = 14:54FormatNumber(Expression,NumDigitsAfterDecimal ,IncludeLeadingDigit ,
21、UseParensForNegativeNumbers ,GroupDigits)返回一个数字格式的表达式。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 9 页 - - - - - - - - - Expression 必需的。要被格式化的表达式。NumDigitsAfterDecimal 可选的。数字值,表示小数点右边的显示位数。缺省值为1 ,表示使用计算机的区域设置值。IncludeLeadingDigit 可选的。三态常数,表示小数点前是否显示零。UseParen
22、sForNegativeNumbers 可选的。三态常数,表示是否把负数值放在圆括号内。GroupDigits 可选的。的三态常数,表示是否用组分隔符对数字分组,组分隔符在计算机的区域设置值中指定。IncludeLeadingDigit 、UseParensForNegativeNumbers 和 GroupDigits 参数的设置值如下:TristateTrue 1 True TristateFalse 0 False TristateUseDefault 2 用计算机区域设置值中的设置值。示例a = FormatNumber( -1234567.89, 4, vbTrue, vbTrue,
23、 vbTrue)a = (1,234,567.8900)a = FormatNumber( -1234567.89, 4, vbFalse, vbFalse, vbFalse)a = -1234567.8900FormatPercent(Expression,NumDigitsAfterDecimal ,IncludeLeadingDigit ,UseParensForNegativeNumbers ,GroupDigits)返回一个百分比格式(乘以100)的表达式,后面有%符号。Expression 必需的。要格式化的表达式。NumDigitsAfterDecimal 可选的。表示小数点右边
24、的显示位数。缺省值为1 ,表示使用计算机的区域设置值。IncludeLeadingDigit 可选的。三态常数,表示小数点前是否显示零。UseParensForNegativeNumbers 可选的。三态常数,表示是否把负数放在圆括号内。GroupDigits 可选的。三态常数,表示是否用组分隔符对数字进行分组,组分隔符在计算机的区域设置值中指定。IncludeLeadingDigit 、UseParensForNegativeNumbers 和 GroupDigits 参数的设置值如下:TristateTrue 1 True TristateFalse 0 False TristateUse
25、Default 2 使用计算机区域设置值中的设置值。示例a = FormatPercent(-1234567.89, 4, vbFalse, vbFalse, vbFalse)a = -123456789.0000%a = FormatPercent(-1234567.89, 4, vbTrue, vbTrue, vbTrue)a = (123,456,789.0000%)Replace(expression, find, replacewith, start, count, compare)返回一个字符串, 该字符串中指定的子字符串已被替换成另一子字符串,并且替换发生的次数也是指定的。exp
26、ression 必需的。字符串表达式,包含要替换的子字符串。find 必需的。要搜索到的子字符串。replacewith 必需的。用来替换的子字符串。start 可选的。在表达式中子字符串搜索的开始位置。如果忽略,假定从1 开始。count 可选的。子字符串进行替换的次数。如果忽略,缺省值是1 ,它表明进行所有可能的替换。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 9 页 - - - - - - - - - compare 可选的。数字值,表示判别子字符串时所用的比较
27、方式。compare 参数的设置值如下:vbUseCompareOption 1 使用 Option Compare 语句的设置值来执行比较。vbBinaryCompare 0 执行二进制比较。vbTextCompare 1 执行文字比较。vbDatabaseCompare 2 仅用于 Microsoft Access 。基于您的数据库的信息执行比较。示例a = Replace(坦坦然坦然面坦然面对, 然, 对)a = 坦坦对坦对面坦对面对a = Replace(坦坦然坦然面坦然面对, 然, 对, 5)a = 对面坦对面对 a = Replace(坦坦然坦然面坦然面对, 然, 对, , 2)a
28、 = 坦坦对坦对面坦然面对RightB(String, Length As Long)从字符串的右边起返回指定数目的字节示例a = RightB( 坦然面对 , 4)a = 面对 Split(expression, delimiter, count, compare)返回一个下标从零开始的一维数组,它包含指定数目的子字符串。expression 必需的。包含子字符串和分隔符的字符串表达式。如果expression 是一个长度为零的字符串 () ,Split 则返回一个空数组,即没有元素和数据的数组。delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符( )作为
29、分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的expression 字符串。count 可选的。要返回的子字符串数,1表示返回所有的子字符串。compare 可选的。数字值,表示判别子字符串时使用的比较方式。compare 参数的设置值如下:vbUseCompareOption 1 用 Option Compare 语句中的设置值执行比较。vbBinaryCompare 0 执行二进制比较。vbTextCompare 1 执行文字比较。vbDatabaseCompare 2 仅用于 Microsoft Access 。基于您的数据库的信息执行比较。示
30、例a = Split( 坦 坦然坦然面坦然面对 )a(0) = 坦 ; a(1) = 坦然 ; a(2) = 坦然面 ; a(3) = 坦然面对 a = Split( 坦!坦然 !坦然面 !坦然面对 , !)结果同上。a = Split( 坦!坦然 !坦然面 !坦然面对 , !, 2)a(0) = 坦 ; a(1) = 坦然 !坦然面 !坦然面对 StrComp(string1, string2, compare)返回Variant (Integer) ,为字符串比较的结果。string1 必要参数。任何有效的字符串表达式。string2 必要参数。任何有效的字符串表达式。名师资料总结 - -
31、 -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 9 页 - - - - - - - - - Compare 可选参数。指定字符串比较的类型。如果compare 参数是Null ,将发生错误。如果省略compare,Option Compare 的设置将决定比较的类型。compare 参数设置为:vbUseCompareOption -1 使用 Option Compare 语句设置执行一个比较。vbBinaryCompare 0 执行一个二进制比较。vbTextCompare 1 执行一个按
32、照原文的比较。vbDatabaseCompare 2 仅适用于Microsoft Access ,执行一个基于数据库信息的比较。StrComp 函数有下列返回值:string1 小于string2 -1 string1 等于string2 0 string1 大于string2 1 string1 或 string 2 为 Null Null 示例a = StrComp( 坦, 然)a = -1a = StrComp( 面, 然)a = 1a = StrComp( 然, 然)a = 0a = StrComp( 然, Null)a = NullStrConv(string, conversion
33、, LCID)返回按指定类型转换的Variant (String) 。string 必要参数。要转换的字符串表达式。conversion 必要参数。 Integer。其值的和决定转换的类型。LCID 可选的。如果与系统LocaleID 不同,则为LocaleID (系统 LocaleID 为缺省值。)conversion 参数的设置值为:vbUpperCase 1 将字符串文字转成大写。vbLowerCase 2 将字符串文字转成小写。vbProperCase 3 将字符串中每个字的开头字母转成大写。vbWide 4 将字符串中单字节字符转成双字节字符。vbNarrow 8 将字符串中双字节字
34、符转成单字节字符。vbKatakana 16 将字符串中平假名字符转成片假名字符。vbHiragana 32 将字符串中片假名字符转成平假名字符。vbUnicode 64 根据系统的缺省码页将字符串转成Unicode。vbFromUnicode 128 将字符串由Unicode 转成系统的缺省码页。示例a = StrConv(how do you do, vbUpperCase)a = HOW DO YOU DOa = StrConv(HOW DO YOU DO, vbLowerCase)a = how do you doa = StrConv(how do you do, vbProperC
35、ase)a = How Do You DovbWide vbNarrow 见原文名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 9 页 - - - - - - - - - a = StrConv( 坦然面对 , vbUnicode)a = fW6qb 楖a = StrConv(fW6qb 楖, vbFromUnicode)a = 坦然面对 StrReverse(string1)返回一个字符串,其中一个指定子字符串的字符顺序是反向的。示例a = StrReverse(坦然面
36、对 )a = 对面然坦 WeekdayName(weekday, abbreviate, firstdayofweek)返回一个字符串,表示一星期中的某天。weekday 必需的。数字值,表示一星期中的某天。该数字值要依赖于firstdayofweek 设置中的设置值来决定。abbreviate 可选的。Boolean 值, 表示星期的名称是否被缩写。如果忽略该值, 缺省值为 False,表明星期的名称不能被缩写。firstdayofweek 可选的。数字值,表示一星期中第一天。firstdayofweek 参数值如下:vbUseSystem 0 使用本国语言支持(NLS) API 设置值。vbSunday 1 星期日(缺省) 。vbMonday 2 星期一vbTuesday 3 星期二vbWednesday 4 星期三vbThursday 5 星期四vbFriday 6 星期五vbSaturday 7 星期六示例a = WeekdayName(5)a = 星期四 以上是 VB 中的全部字符串处理函数。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 9 页 - - - - - - - - -