在access中,你可以使用一組VBA字串處理函式實現對字串的擷取。常用的函式有InStr, Left, LTrim, Mid, Right, RTrim,
Trim。
1. InStr 函式
返回 Variant (Long),指定一字串在另一字串中最先出現的位置。
語法
InStr([start, ]string1,
string2[, compare])
示例
本示例使用 InStr 函式來查詢某字串在另一個字串中首次出現的位置。
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" " 被搜尋的字串。
SearchChar = "P" " 要查詢字串 "P"。
" 從第四個字元開始,以文字比較的方式找起。返回值為 6(小寫 p)。
" 小寫 p 和大寫 P 在文字比較下是一樣的。
MyPos = Instr(4, SearchString, SearchChar, 1)
" 從第一個字元開使,以二進位制比較的方式找起。返回值為 9(大寫 P)。
" 小寫 p 和大寫 P 在二進位制比較下是不一樣的。
MyPos = Instr(1, SearchString, SearchChar, 0)
" 預設的比對方式為二進位制比較(最後一個引數可省略)。
MyPos = Instr(SearchString, SearchChar) " 返回 9。
MyPos = Instr(1, SearchString, "W") " 返回 0。
2. Left,Right 函式
返回 Variant (String),其中包含字串中從左邊(Right從右邊)算起指定數量的字元。
Left(string, length)
Right(string, length)
本示例使用 Left 函式來得到某字串最左邊的幾個字元。
Dim AnyString, MyStr
AnyString = "Hello World" " 定義字串。
MyStr = Left(AnyString, 1) " 返回 "H"。
MyStr = Left(AnyString, 7) " 返回 "Hello W"。
MyStr = Left(AnyString, 20) " 返回 "Hello World"。
3. LTrim、RTrim與 Trim 函式
返回 Variant (String),其中包含指定字串的複製,沒有前導空白
(LTrim)、尾隨空白 (RTrim) 或前導和尾隨空白 (Trim)。
LTrim(string)
RTrim(string)
Trim(string)
必要的 string 引數可以是任何有效的字串表示式。如果 string 包含 Null,將返回 Null。
本示例使用 LTrim 及 RTrim 函式將某字串的開頭及結尾的空格全部去除。事實上只使用
Trim 函式也可以做到將兩頭空格全部去除。
Dim MyString, TrimString
MyString = " " " 設定字串初值。
TrimString = LTrim(MyString) " TrimString = " "。
TrimString = RTrim(MyString) " TrimString = " "。
TrimString = LTrim(RTrim(MyString)) " TrimString = ""。
" 只使用 Trim 函式也同樣將兩頭空格去除。
TrimString = Trim(MyString) " TrimString = ""。
4. Mid 函式
返回 Variant (String),其中包含字串中指定數量的字元。
Mid(string, start[,
length])
本示例使用 Mid 語句來得到某個字串中的幾個字元。
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" 建立一個字串。
FirstWord = Mid(MyString, 1, 3) " 返回 "Mid"。
LastWord = Mid(MyString, 14, 4) " 返回 "Demo"。
MidWords = Mid(MyString, 5) " 返回 "Funcion Demo"。
提醒:擷取字串時,通常需要判斷字串位置,,並且擷取後或擷取前還需要去掉空格,所以以上各個函式可能都會用到
在access中,你可以使用一組VBA字串處理函式實現對字串的擷取。常用的函式有InStr, Left, LTrim, Mid, Right, RTrim,
Trim。
1. InStr 函式
返回 Variant (Long),指定一字串在另一字串中最先出現的位置。
語法
InStr([start, ]string1,
string2[, compare])
示例
本示例使用 InStr 函式來查詢某字串在另一個字串中首次出現的位置。
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" " 被搜尋的字串。
SearchChar = "P" " 要查詢字串 "P"。
" 從第四個字元開始,以文字比較的方式找起。返回值為 6(小寫 p)。
" 小寫 p 和大寫 P 在文字比較下是一樣的。
MyPos = Instr(4, SearchString, SearchChar, 1)
" 從第一個字元開使,以二進位制比較的方式找起。返回值為 9(大寫 P)。
" 小寫 p 和大寫 P 在二進位制比較下是不一樣的。
MyPos = Instr(1, SearchString, SearchChar, 0)
" 預設的比對方式為二進位制比較(最後一個引數可省略)。
MyPos = Instr(SearchString, SearchChar) " 返回 9。
MyPos = Instr(1, SearchString, "W") " 返回 0。
2. Left,Right 函式
返回 Variant (String),其中包含字串中從左邊(Right從右邊)算起指定數量的字元。
語法
Left(string, length)
Right(string, length)
示例
本示例使用 Left 函式來得到某字串最左邊的幾個字元。
Dim AnyString, MyStr
AnyString = "Hello World" " 定義字串。
MyStr = Left(AnyString, 1) " 返回 "H"。
MyStr = Left(AnyString, 7) " 返回 "Hello W"。
MyStr = Left(AnyString, 20) " 返回 "Hello World"。
3. LTrim、RTrim與 Trim 函式
返回 Variant (String),其中包含指定字串的複製,沒有前導空白
(LTrim)、尾隨空白 (RTrim) 或前導和尾隨空白 (Trim)。
語法
LTrim(string)
RTrim(string)
Trim(string)
必要的 string 引數可以是任何有效的字串表示式。如果 string 包含 Null,將返回 Null。
示例
本示例使用 LTrim 及 RTrim 函式將某字串的開頭及結尾的空格全部去除。事實上只使用
Trim 函式也可以做到將兩頭空格全部去除。
Dim MyString, TrimString
MyString = " " " 設定字串初值。
TrimString = LTrim(MyString) " TrimString = " "。
TrimString = RTrim(MyString) " TrimString = " "。
TrimString = LTrim(RTrim(MyString)) " TrimString = ""。
" 只使用 Trim 函式也同樣將兩頭空格去除。
TrimString = Trim(MyString) " TrimString = ""。
4. Mid 函式
返回 Variant (String),其中包含字串中指定數量的字元。
語法
Mid(string, start[,
length])
示例
本示例使用 Mid 語句來得到某個字串中的幾個字元。
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" 建立一個字串。
FirstWord = Mid(MyString, 1, 3) " 返回 "Mid"。
LastWord = Mid(MyString, 14, 4) " 返回 "Demo"。
MidWords = Mid(MyString, 5) " 返回 "Funcion Demo"。
提醒:擷取字串時,通常需要判斷字串位置,,並且擷取後或擷取前還需要去掉空格,所以以上各個函式可能都會用到