一、提取字符/字符串、提取字符串长度
1.1 Left函数
left(字符串,长度) :从[字符串]的左边开始返回[长度]个字符
例如: Left(“欢迎你关注我”,3) 则返回 “欢迎你”
1.2 Right函数
right(字符串,长度) : 从[字符串]的右边开始返回[长度]个字符
例如 Right(“欢迎你关注”,3) 则返回 “你关注”
1.3 Mid函数
mid(字符串,从第几个开始,长度) : 在[字符串]中[从第几个开始]取出[长度个字符串]
例如 mid(“欢迎你关注”,1,3) 则返回 “欢迎你”
1.4 LTrim/RTrim/Trim函数
LTrim函数: 删除字符串前面的空格;
RTrim函数: 删除字符串后面的空格;
Trim函数: 删除两头的空格。
例如 : trim(” 欢迎 关注 “) 则返回 “欢迎 关注” ,中间的空格不受任何影响
1.5 Len函数
len(字符串) : 返回[字符串]的长度
例如: len(“欢迎你关注”) 则返回 5
2
创建字符串
2.1 Space函数
space(个数) : 返回[个数]个空格
例如 space(5) 则返回 ”
如下例所示:
Sub CreateString1() Dim MyString’ 返回 5 个空格的字符串。 MyString = Space(5) ‘ 将 5 个空格插入两个字符串中间。 MyString = “Hello” & Space(5) & “World”End Sub
2.2 string函数
string(个数,字符) :返回[个数]个[字符]
例如 : string(3,”小”) 则返回 “小小小”
注意:
① string(3,”你好世界”) 也返回 “你你你”,只有首字符才有效
②字符可以指定为字符串或者是ANSI字符代码
例如,下面使用String函数生成指定长度且只含单一字符的字符串。
Sub test() Dim MyString MyString = String(5, “*”) ‘ 返回 “*****” MyString = String(5, 43) ‘ 返回 “+++++” ’43为ANSI字符代码 MyString = String(10, “ABC”) ‘ 返回 “AAAAAAAAAA”End Sub
3
转换字符串
3.1 asc函数
asc(字符): 返回[字符]的ASCII编码,若有多个字符,则只返回首字符的ascii编码,和Chr()函数是一个可逆的过程
例如 asc(“你”) 则返回-15133 ; asc(“你好世界”) 也返回 -15133
3.2 Chr函数
chr(ASCII编码): 返回[ASCII]编码所代表的字符,和ASC()函数是一个可逆的过程
例如 chr(-12127) 则返回 “小” ;chr(asc(“小”)) 则返回”小”(这里是为了说明asc和chr的可逆性,例用此特性可以加密文本)
3.3 StrConv函数
StrConv函数: 使用StrConv函数来按指定类型转换字符串。
语法: StrConv(string,conversion,LCID)
其中,参数string为要转换的字符串,参数conversion为指定转换的类型,参数LCID为可选参数。
将参数conversion设置为vbUpperCase或1,则将字符串转换成大写;(常用)
将参数设置为vbLowerCase或2,则将字符串转换成小写;(常用)
将参数设置为vbProperCase或3,则将字符串中每个字的开头字母转换成大写;
将参数设置为vbUnicode或64,则根据系统的缺省码页将字符串转换成Unicode;
将参数设置为vbFromUnicode或128,则将字符串由Unicode转换成系统的缺省码页。
下面的例子将句子中每个词语的首字母转换为大写:
Sub testConverseString2() Debug.Print StrConv(“my book is this book.”, vbProperCase)End Sub
3.4 Ucase/Lcase函数
Ucase(字符串): 返回[字符串]的大写形式,只对英文字符有效
例如: ucase(“nihaoSHijie”) 则返回 “NIHAOSHIJIE”
Lcase(字符串): 返回[字符串]的小写形式,只对英文字符有效
例如: lcase(“NIhAOshiJie”) 则返回 “nihaoshijie”
4
查找/替换字符串
4.1 instr函数/ InStrRev函数
instr(从第几个开始,字符串1,字符串2) : 从规定的位置开始查找,返回字符串2在字符串1中的位置
例如: instr(1,”你好世界”,”你”) 则返回 1,instr(2,”你好世界”,”你”),则返回 0 。 0 表示未找到
InStrRev函数:与InStr函数不同的是,从字符串的末尾算起。
4.2 Replace函数
Replace函数:返回一个字符串,该字符串中指定的子字符串已被替换成另一子字符串,并且替换发生的次数也是指定的。
语法:Replace(expression, find, replace[, start[, count[, compare]]])
Replace函数语法有如下命名参数:
expression 必需的。字符串表达式,包含要替换的子字符串。
find 必需的。要搜索到的子字符串。
replace 必需的。用来替换的子字符串。
start 可选的。在表达式中子字符串搜索的开始位置。如果忽略,假定从1开始。
count 可选的。子字符串进行替换的次数。如果忽略,缺省值是 –1,它表明进行所有可能的替换。
compare 可选的。数字值,表示判别子字符串时所用的比较方式。
实例:
Sub tihuan()Str1 = “你好@世界@”Str2 = Replace(Str1, “@”, “”) ‘将str1中的@替换为空,Str2结果为“你好世界”End Sub