字符串函数 (Visual Basic)

下表列出了 Visual Basic 在 Microsoft.VisualBasic.Strings 类中提供的用于搜索和操作字符串的函数。 可将其视为 Visual Basic 的内部函数;也就是说,不必将其作为类的显式成员进行调用,如示例所示。 System.String 类中提供了其他方法和某些情况下的补充方法。

.NET Framework 方法 说明
AscAscW 返回表示与某个字符相对应的字符代码的 Integer 值。
ChrChrW 返回与指定字符代码相关联的字符。
Filter 返回一个从零开始的数组,该数组包含基于指定筛选条件的 String 数组的子集。
Format 返回根据格式 String 表达式中包含的指令设置格式的字符串。
FormatCurrency 返回一个格式为货币值的表达式,该货币值使用系统控制面板中定义的货币符号。
FormatDateTime 返回一个表示日期/时间值的字符串表达式。
FormatNumber 返回格式化为数字的表达式。
FormatPercent 返回以 % 字符结尾的百分比格式的表达式(即乘以 100)。
InStr 返回一个整数,该整数指定一个字符串在另一个字符串中的第一个匹配项的起始位置。
InStrRev 返回某一字符串从另一字符串的右侧开始算起第一次出现的位置。
Join 返回通过连接一个数组中包含的若干子字符串创建的字符串。
LCase 返回将转换为小写的字符串或字符。
Left 返回一个字符串,该字符串包含从某字符串左侧算起的指定数量的字符。
Len 返回一个整数,该整数为字符串中的字符数。
LSet 返回一个左对齐字符串,该字符串包含调整为指定长度的指定的字符串。
LTrim 返回一个字符串,该字符串为不带前导空格的指定字符串的副本。
Mid 返回一个字符串,该字符串包含某个字符串的指定数量的字符。
Replace 返回一个字符串,其中的指定子字符串已由另一个子字符串替换了指定的次数。
Right 返回一个字符串,其中包含从某个字符串右端开始的指定数量的字符。
RSet 返回包含调整为指定长度的指定字符串的右对齐字符串。
RTrim 返回一个字符串,该字符串为不带尾随空格的指定字符串的副本。
Space 返回由指定数量空格组成的字符串。
Split 返回一个从零开始的一维数组,其中包含指定数量的子字符串。
StrComp 根据字符串的比较结果返回 -1、0 或 1。
StrConv 返回按照指定方式转换的字符串。
StrDup 返回由指定字符重复指定次数后形成的字符串或对象。
StrReverse 返回指定字符串的字符顺序是相反的字符串。
Trim 返回一个字符串,该字符串为不带前导或尾随空格的指定字符串的副本。
UCase 返回一个字符串或字符,其中包含转换为大写的指定字符串。

你可以使用 Option Compare 语句来设置是按照系统区域设置 (Text) 确定的还是字符的内部二进制表示 (Binary) 确定的不区分大小写的文本排序顺序来比较字符串。 默认的文本比较方法是 Binary

示例:UCase

本例使用 UCase 函数返回字符串的大写版本。

' String to convert.
Dim lowerCase As String = "Hello World 1234"
' Returns "HELLO WORLD 1234".
Dim upperCase As String = UCase(lowerCase)

示例:LTrim

此示例使用 LTrim 函数去除字符串变量的前导空格,使用 RTrim 函数去除尾随空格, 并使用 Trim 函数同时去除这两种类型的空格。

' Initializes string.
Dim testString As String = "  <-Trim->  "
Dim trimString As String
' Returns "<-Trim->  ".
trimString = LTrim(testString)
' Returns "  <-Trim->".
trimString = RTrim(testString)
' Returns "<-Trim->".
trimString = LTrim(RTrim(testString))
' Using the Trim function alone achieves the same result.
' Returns "<-Trim->".
trimString = Trim(testString)

示例:Mid

此示例使用 Mid 函数返回某一字符串中的指定数量的字符。

' Creates text string.
Dim testString As String = "Mid Function Demo"
' Returns "Mid".
Dim firstWord As String = Mid(testString, 1, 3)
' Returns "Demo".
Dim lastWord As String = Mid(testString, 14, 4)
' Returns "Function Demo".
Dim midWords As String = Mid(testString, 5)

示例:Len

本例使用 Len 返回字符串中的字符数。

' Initializes variable.
Dim testString As String = "Hello World"
' Returns 11.
Dim testLen As Integer = Len(testString)

示例:InStr

本例使用 InStr 函数返回一个字符串在另一个字符串中的第一个匹配项的位置。

' String to search in.
Dim searchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim searchChar As String = "P"

Dim testPos As Integer
' A textual comparison starting at position 4. Returns 6.
testPos = InStr(4, searchString, searchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
testPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
testPos = InStr(searchString, searchChar)

' Returns 0.
testPos = InStr(1, searchString, "W")

示例:Format

此示例演示同时使用 Format 格式和用户定义格式格式化值的 String 函数的各种用法。 对于日期分隔符 (/)、时间分隔符 (:) 和 AM/PM 指示符(ttt),系统显示的实际格式化输出取决于代码使用的区域设置。 当在开发环境中显示时间和日期时,使用代码区域设置的短时间格式和短日期格式。

注意

对于使用 24 小时制的区域设置,AM/PM 指示符(ttt)不显示任何内容。

Dim testDateTime As Date = #1/27/2001 5:04:23 PM#
Dim testStr As String
' Returns current system time in the system-defined long time format.
testStr = Format(Now(), "Long Time")
' Returns current system date in the system-defined long date format.
testStr = Format(Now(), "Long Date")
' Also returns current system date in the system-defined long date 
' format, using the single letter code for the format.
testStr = Format(Now(), "D")

' Returns the value of testDateTime in user-defined date/time formats.
' Returns "5:4:23".
testStr = Format(testDateTime, "h:m:s")
' Returns "05:04:23 PM".
testStr = Format(testDateTime, "hh:mm:ss tt")
' Returns "Saturday, Jan 27 2001".
testStr = Format(testDateTime, "dddd, MMM d yyyy")
' Returns "17:04:23".
testStr = Format(testDateTime, "HH:mm:ss")
' Returns "23".
testStr = Format(23)

' User-defined numeric formats.
' Returns "5,459.40".
testStr = Format(5459.4, "##,##0.00")
' Returns "334.90".
testStr = Format(334.9, "###0.00")
' Returns "500.00%".
testStr = Format(5, "0.00%")

另请参阅