字符串是一个字符序列,可以由字母,数字,特殊字符或全部字符组成。 如果一个变量被包含在双引号""
中,则被认为是一个字符串。
语法:
variable_name = "this is a string"
1、InStr函数
语法:
InStr([start,]string1,string2[,compare])
参数说明
- Start - 一个可选参数。指定搜索的起始位置。搜索从第一个位置开始,从左到右。
- String1 - 必需的参数。要搜索的字符串。
- String2 - 必需的参数。要在String1中搜索的字符串。
- Compare - 一个可选参数。指定要使用的字符串比较。它可以采取以下提到的值:
- 0 = vbBinaryCompare - 执行二进制比较(默认)
- 1 = vbTextCompare - 执行文本比较
函数返回值分为0 和其他整数(绝对字符索引位置)
若搜索不到就返回0
Private Sub Constant_demo_Click()
Dim Var As Variant
Var = "Microsoft VBScript"
MsgBox ("Line 1 : " & InStr(1, Var, "s"))
MsgBox ("Line 2 : " & InStr(7, Var, "s"))
MsgBox ("Line 3 : " & InStr(1, Var, "f", 1))
MsgBox ("Line 4 : " & InStr(1, Var, "t", 0))
MsgBox ("Line 5 : " & InStr(1, Var, "i"))
MsgBox ("Line 6 : " & InStr(7, Var, "i"))
MsgBox ("Line 7 : " & InStr(Var, "VB"))
End Sub
2、InStrRev
InStrRev()
函数返回一个字符串在另一个字符串中的第一次出现。搜索从右到左。
InStrRev(string1,string2[,start,[compare]])
- String1 - 必需的参数,要搜索的字符串。
- String2 - 必需的参数。要在
String1
中搜索的字符串。 - Start - 一个可选参数。指定搜索的起始位置。从右到左的第一个位置开始搜索。
- Compare - 一个可选参数。指定要使用的字符串比较。 它可以采取以下提到的价值。
- 0 = vbBinaryCompare - 执行二进制比较(默认)
- 1 = vbTextCompare - 执行文本比较
其中Start参数是指定搜索的起始位置,比如指定start=5,那么搜索从o开始往左搜索,如果搜索s,则返回值为0.
Private Sub Constant_demo_Click()
var = "Microsoft VBScript"
msgbox("Line 1 : " & InStrRev(var,"s",10))
msgbox("Line 2 : " & InStrRev(var,"s",7))
msgbox("Line 3 : " & InStrRev(var,"f",-1,1))
msgbox("Line 4 : " & InStrRev(var,"t",5))
msgbox("Line 5 : " & InStrRev(var,"i",7))
msgbox("Line 6 : " & InStrRev(var,"i",7))
msgbox("Line 7 : " & InStrRev(var,"VB",1))
End Sub
3、LCase()
LCase()
函数将输入的字符串转换为小写字母后返回字符串。
Private Sub Constant_demo_Click()
var = "Microsoft VBScript"
msgbox("Line 1 : " & LCase(var))
var = "MS VBSCRIPT"
msgbox("Line 2 : " & LCase(var))
var = "microsoft"
msgbox("Line 3 : " & LCase(var))
End Sub
4、UCase()将字符串转为大写字母
UCase
函数将输入的字符串转换为大写字母后返回字符串。
Private Sub Constant_demo_Click()
var = "Microsoft VBScript"
msgbox("Line 1 : " & UCase(var))
var = "MS VBSCRIPT"
msgbox("Line 2 : " & UCase(var))
var = "microsoft"
msgbox("Line 3 : " & UCase(var))
End Sub
Line 1 : MICROSOFT VBSCRIPT
Line 2 : MS VBSCRIPT
Line 3 : MICROSOFT
5、left/right/Mid和excel里面含义一样
8、Ltrim()
函数删除字符串左侧的空格。
Private Sub Constant_demo_Click()
Dim var as Variant
var = " Microsoft VBScript"
msgbox "After Ltrim : " & LTrim(var)
End Sub
9、同Ltrim
11、Len函数
Len
函数返回给定输入字符串的长度,包括空格。
12、Replace函数
Private Sub Constant_demo_Click()
Dim var As Variant
var = "VBAlesson"
MsgBox "Repalce函数用法,原字符串“VBAlesson”,删除VBA后剩下 " & Replace(var, "VBA", "")
End Sub
13、Space
函数用特定数量的空格填充字符串。
Private Sub Constant_demo_Click()
Dim var1 as Variant
var1 = "Microsoft"
Dim var2 as Variant
var2 = "VBScript"
msgbox(var1 & Space(2)& var2)
End Sub
14、StrComp(string1,string2[,compare])
在比较两个给定字符串后,StrComp
函数返回一个整数值。它可以根据要比较的输入字符串返回三个值:-1
,0
或1
中的任何一个。如下 -
- 如果
String1 < String2
, 那么StrComp
函数返回-1
- 如果
String1 = String2
, 那么StrComp
函数返回0
- 如果
String1 > String2
, 那么StrComp
函数返回1
语法
StrComp(string1,string2[,compare])
Vb
参数说明
- String1 - 必需的参数。第一个字符串表达式。
- String2 - 必需的参数。第二个字符串表达式。
- Compare - 一个可选参数。 指定要使用的字符串比较。它可以采用以下值。
0 = vbBinaryCompare
- 执行二进制比较(默认)1 = vbTextCompare
- 执行文本比较
Private Sub Constant_demo_Click()
Dim var1 As Variant
MsgBox ("Line 1 :" & StrComp("Microsoft", "Microsoft"))
MsgBox ("Line 2 :" & StrComp("M", "m"))
MsgBox ("Line 3 :" & StrComp("Microsoft", "MiCrOsOfT"))
MsgBox ("Line 4 :" & StrComp("Microsoft", "MiCrOsOfT", 1))
MsgBox ("Line 5 :" & StrComp("Microsoft", "MiCrOsOfT", 0))
End Sub
小写字母大于大写字母
Tips:执行二进制比较,小写=大写字母
15、String函数
String
函数使用指定的字符填充指定次数的字符串。
String(number,character)
Vb
参数说明
- Number - 必需的参数。一个整数值,对于字符参数将重复指定的次数。
- Character - 必需的参数。字符值,必须重复指定的次数。
Private Sub Constant_demo_Click()
msgbox("Line 1 :" & String(3,"$"))
msgbox("Line 2 :" & String(4,"*"))
msgbox("Line 3 :" & String(5,100))
msgbox("Line 4 :" & String(6,"ABCDE"))
End Sub
结果如下:
Line 1 :$$$
Line 2 :****
Line 3 :ddddd
Line 4 :AAAAAA
16、StrReverse()
StrReverse
函数反转指定的字符串。
语法
StrReverse(string)
Private Sub Constant_demo_Click()
msgbox("Line 1 : " & StrReverse("VBSCRIPT"))
msgbox("Line 2 : " & StrReverse("My First VBScript"))
msgbox("Line 3 : " & StrReverse("123.45"))
End Sub
结果:
Line 1 : TPIRCSBV
Line 2 : tpircSBV tsriF yM
Line 3 : 54.321