1. 程式人生 > >VB常用字串函式

VB常用字串函式

1. ASC(X),Chr(X):轉換字元字元碼   

[格式]:   
P=Asc(X) 返回字串X的第一個字元的字元碼   
P=Chr(X) 返回字元碼等於X的字元   

[範例]:   
(1)P=Chr(65)   
‘ 輸出字元A,因為A的ASCII碼等於65   
(2)P=Asc(“A”)   
‘ 輸出65   


2. Len(X): 計算字串X的長度   
[格式]:   
P=Len(X)   
[說明]:   
空字串長度為0,空格符也算一個字元,一箇中文字雖然佔用2 Bytes,但也算一個字元。   

[範例]:   
(1) 令X=”” (空字串)   
Len(X) 輸出結果為0   
(2) 令X=”abcd”    
Len(X) 輸出結果為4   
(3) 令X=”VB教程”   
Len(X) 輸出結果為4   


3. Mid(X)函式:讀取字串X中間的字元   
[格式]:   
P=Mid(X,n)   
由X的第n個字元讀起,讀取後面的所有字元。   
P=Mid(X,n,m)   
由X的第n個字元讀起,讀取後面的m個字元。   

[範例]:   
(1) X=”abcdefg”   
P=Mid(X,5)   
結果為:P=”efg”   
(2) X=”abcdefg”   
P=Mid(X,2,4)   
結果為P=”bcde”   


4. Replace: 將字串中的某些特定字串替換為其他字串   
[格式]:   
P=Replace(X,S,R)   
[說明]:將字串X中的字串S替換為字串R,然後返回。   

[範例]:   
X=”VB is very good”   
P=Replace(X,good,nice)   
輸出結果為:P=”VB is very nice”   


5. StrReverse:反轉字串   
[格式]:   
P=StrReverse(X)   
[說明]:   
返回X引數反轉後的字串   
[範例]:   
(1)X=”abc”   
P=StrReverse(X)   
輸出結果:P=”cba”   


6. Ucase(X),Lcase(X):轉換英文字母的大小寫   
[格式]:   
P=Lcase(X)   
‘ 將X字串中的大寫字母轉換成小寫   
P=Ucase(X)   
‘ 將X字串中的小寫字母轉換成大寫   
[說明]:除了英文字母外,其他字元或中文字都不會受到影響。   

[範例]:   
(1) 令 X=”VB and VC”   
則Lcase(X)的結果為”vb and vc”,Ucase(X)的結果為”VB AND VC”   


7. InStr函式:尋找字串   
[格式]:   
P=InStr(X,Y)   
從X第一個字元起找出Y出現的位置   
P=InStr(n,X,Y)   
從X第n個字元起找出Y出現的位置   
[說明]:   
(1) 若在X中找到Y,則返回值是Y第一個字元出現在X中的位置。   
(2) InStr(X,Y)相當於InStr(1,X,Y)。   
(3) 若字串長度,或X為空字串,或在X中找不到Y,則都返回0。   
(4) 若Y為空字串,則返回0。

----------------------------------------------------------------------------------------------

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 ; instrRev("小欣無敵","欣",1) 則返回 0 ,因為它從"小欣無敵"的第1個字開始往前查詢,所以找不到 。0 表示未找到

left(字串,長度) ByVal 從[字串]的左邊開始返回[長度]個字元
例如 Left("小欣無敵,3) 則返回 "小欣無"

right(字串,長度) ByVal 從[字串]的右邊開始返回[長度]個字元
例如 Right("小欣無敵",3) 則返回 "欣無敵"

ucase(字串) ByVal 返回[字串]的大寫形式,只對英文字元有效
例如 ucase("xiaoXINwuDi") 則返回 "XIAOXINWUDI"

lcase(字串) ByVal 返回[字串]的小寫形式,只對英文字元有效
例如 lcase("xiaoXINwuDi") 則返回 "xiaoxinwudi"

asc(字元) Byval返回[字元]的ascii編碼,若有多個字元,則只返回首字元的ascii編碼,和Chr()函式是一個可逆的過程
例如 asc("小") 則返回 -12127 ; asc("小欣無敵") 也返回 -12127

chr(ASCii編碼) Byval 返回[Ascii]編碼所代表的字元,和Chr()函式是一個可逆的過程
例如 chr(-12127) 則返回 "小" ;chr(asc("小")) 則返回"小"(這裡是為了說明asc和chr的可逆性,例用此特性可以加密文字)

trim(字串) Byval 返回去掉了前、後之後的[字串]
例如 trim("     小 欣    無敵    ") 則返回 "小 欣    無敵" ,中間的空格不受任何影響

string(個數,字元) Byval 返回[個數]個[字元]
例如 string(3,"小") 則返回 "小小小" , 而 string(3,"小欣無敵") 也返回 "小",只有首字元才有效

space(個數) Byval 返回[個數]個空格
例如 space(5) 則返回 "      "

strconv(字串,轉換的型別) Byval 將字串轉成指定的型別。常用的型別只有兩個,vbwide 半形轉成全形,vbNarrow 全形轉成半形
例如 strconv("xiao",vbwide) 則返回 "XIAO",而strconv("XIAO",vbnarrow) 則返回 "XIAO"
'備註 vbwide = 4 ,vbnarrow = 8

len(字串) Byval 返回[字串]的長度
例如 len("小欣無敵") 則返回 4

------------------------------------------------------------------------------------------

  • Len Len(string|varname) 返回字串內字元的數目,或是儲存一變數所需的位元組數  
  • Trim Trim(string) 將字串前後的空格去掉  
  • Ltrim Ltrim(string) 將字串前面的空格去掉  
  • Rtrim Rtrim(string) 將字串後面的空格去掉  
  • Mid Mid(string,start,length) 從string字串的start字元開始取得length長度的字串,如果省略第三個引數表示從start字元開始到字串結尾的字串  
  • Left Left(string,length) 從string字串的左邊取得length長度的字串  
  • Right Right(string,length) 從string字串的右邊取得length長度的字串  
  • LCase LCase(string) 將string字串裡的所有大寫字母轉化為小寫字母  
  • UCase UCase(string) 將string字串裡的所有大寫字母轉化為大寫字母  
  • StrComp StrComp(string1,string2[,compare]) 返回string1字串與string2字串的比較結果,如果兩個字串相同,則返回0,如果小於則返回-1,如果大於則返回1
  • InStr InStr(string1,string2[, compare]) 返回string1字串在string2字串中第一次出現的位置
  • Split Split(string1,delimiter[, count[, start]]) 將字串根據delimiter拆分成一維陣列,其中delimiter用於標識子字串界限。如果省略,使用空格("")作為分隔符。
    count 返回的子字串數目,-1 指示返回所有子字串。
    start為 1 執行文字比較;如果為 0 或者省略執行二進位制比較。  
  • Replace Replace(expression, find, replacewith[, compare[, count[, start]]]) 返回字串,其中指定數目的某子字串(find)被替換為另一個子字串(replacewith)

[示例:]

1、Len函式示例:
下面的示例利用 Len 函式返回字串中的字元數目:
Dim MyString
MyString = Len("VBSCRIPT") 'MyString 包含 8。
2、Trim、Ltrim、Rtrim函式示例:
下面的示例利用 LTrim, RTrim, 和 Trim 函式分別用來除去字串開始的空格、尾部空格、 開始和尾部空格:
Dim MyVar
MyVar = LTrim("   vbscript ")   'MyVar 包含 "vbscript "。
MyVar = RTrim("   vbscript ")   'MyVar 包含 "   vbscript"。
MyVar = Trim("   vbscript ")    'MyVar 包含"vbscript"。
3、Mid函式示例:
下面的示例利用 Mid 函式返回字串中從第四個字元開始的六個字元:
Dim MyVar
MyVar = Mid("VB指令碼is fun!", 4, 6) 'MyVar 包含 "Script"。
4、Left函式示例:
下面的示例利用Left 函式返回MyString 的左邊三個字母:
Dim MyString, LeftString
MyString = "VBSCript"
LeftString = Left(MyString, 3) 'LeftString 包含 "VBS
5、Right函式示例:
下面的示例利用 Right 函式從字串右邊返回指定數目的字元:
Dim AnyString, MyStr
AnyString = "Hello World"       '定義字串。
MyStr = Right(AnyString, 1)     '返回 "d"。
MyStr = Right(AnyString, 6)     ' 返回 " World"。
MyStr = Right(AnyString, 20)    ' 返回 "Hello World"。
6、LCase函式示例:
下面的示例利用 LCase 函式把大寫字母轉換為小寫字母:
Dim MyString
Dim LCaseString
MyString = "VBSCript"
LCaseString = LCase(MyString) ' LCaseString 包含 "vbscript"。
7、 UCase函式示例:
下面的示例利用 UCase 函式返回字串的大寫形式:
Dim MyWord
MyWord = UCase("Hello World")     ' 返回"HELLO WORLD"。
8、StrComp函式示例:
下面的示例利用 StrComp 函式返回字串比較的結果。如果第三個引數為 1 執行文字比較;如果第三個引數為 0 或者省略執行二進位制比較。
Dim MyStr1, MyStr2, MyComp
MyStr1 = "ABCD": MyStr2 = "abcd"        '定義變數。
MyComp = StrComp(MyStr1, MyStr2, 1)     ' 返回 0。
MyComp = StrComp(MyStr1, MyStr2, 0)     ' 返回 -1。
MyComp = StrComp(MyStr2, MyStr1)        ' 返回 1。
9、InStr示例:
下面的示例利用 InStr 搜尋字串:
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"???
SearchChar = "P"??
MyPos = Instr(SearchString, SearchChar)???'返回 9.
注意:返回的不是一個字串在另一個字串中第一次出現的字元位置,而是位元組位置。
10、Split函式示例:
Dim MyString, MyArray, Msg
MyString = "VBScriptXisXfun!"
MyArray = Split(MyString, "x",-1,1)
' MyArray(0) contains "VBScript".
' MyArray(1) contains "is".
' MyArray(2) contains "fun!".
Response.Write(MyArray(0))
11、Replace函式示例:
Replace("ABCD", "BC", "12")    '得到A12D

------------------------------------------------------------------------------------------------

 1.Chr[$](數值)函式
  返回標準擴充套件碼的對應字元。
  說明:
  (1)數值範圍在0到255之間。
  (2)Chr()返回的是數值型別,而Chr$()則返回字元型別。
  (3)ANSI是ASCII碼的擴充,其前128個字元都與ASCII碼相同。
  例如,我們常用以下的語句加入回車換行符。Chr(13)+Chr(10)
  2.Asc("字元")函式
  此函式用來返回字元的ANSI碼值。
  說明: 若輸入為一字串,則只返回第一個字元的ASCII碼值。
  例如,
    x=Asc("a"),則, x=97
    x=Asc("ab"),則,x=97
  3.String[$](個數,字元)
  用於重複某一個字元。
  說明:
  (1)“個數”用來指定重複的次數。
  (2)若“字元”為一字串,則只重複複製第一個字元。
  4.Len(字串) 函式
  用於返回字串的長度。
  5.Left[$](字串,字元個數)
  用於返回“字串”最左邊的長度為“字元個數”的字串。
  例如,
    Dim substr As String
    substr=Left("Visual Basic",3)
    則
    substr="Vis"
  6.Right[$](字串,字元個數)
  用於返回“字串”最右邊的長度為“字元個數”的字串。
  例如,
    Dim substr As String
    substr=Right("Visual Basic",3)
    則
    substr="sic"
  7.Mid[$](字串,起始位置,[字元個數])
  用於返回一個子字串。
  說明:
  (1)子字串從“起始位置”開始,以“字元個數”為長度。
  (2)若省略“字元個數”,則從起始位置到字串的結尾。
  8.Lcase(字串)和Ucase(字串)函式
  Lcase:不論字串中的字元為大寫還是小寫,一律輸出為小寫。
  Ucase:不論字串中的字元為大寫還是小寫,一律輸出為小寫。
  9.Ltrim(字串)、Rtrim(字串)、Trim(字串)函式
  Ltrim(字串):用於去掉字串中左邊的空格。
  Rtrim(字串):用於去掉字串中右邊的空格。
  Trim(字串):用於去掉字串中左右兩邊的空格。
  10.Str(數值)函式 和 Val(字串) 函式
  Str(數值):用於將數字轉化為字串。
  Val(字串):用於將字串轉化為數值。
  例如,
    Dim a As String
    Dim b As Long
    a=Str(345.45)
    b=Val("234.45")
    則
    a="345.45"
    b=234.45