返回一个 Variant (String) 值,其中包含字符串中指定数量的字符。
语法
中间 ( 字符串,start [, length ] )
Mid 函数语法具有以下参数:
参数 |
说明 |
字符串 |
必需。 字符串表达式 从中返回的字符。 如果 字符串 包含 Null,则返回 Null 。 |
开始 |
必需。 长。 要获取的部件开始的 字符串 中的字符位置。 如果 start 大于 字符串中的字符数, 则 Mid 返回长度为零的字符串 (“”) 。 |
长度 |
可选。 变量 (长) 。 要返回的字符数。 如果省略或文本中 长度 少于字符 (包括 开头) 字符,则返回从 字符串的开始 位置到结束的所有字符。 |
备注
若要确定 字符串中的字符数,请使用 Len 函数。
注意: 将 MidB 函数用于字符串中包含的字节数据,就像在双字节字符集语言中一样。 参数指定字节数,而不是指定字符数。 有关使用 MidB 的示例代码,请参阅示例主题中的第二个示例。
查询示例
Expression |
结果 |
SELECT ProductID, Mid (ProductID,5) AS Expr1 FROM ProductSales; |
从字符位置 5 开始返回“ProductID”和 ProductID 部分,并在 Expr1 列中显示结果。 |
SELECT ProductID, Mid (ProductID,5,4) AS testMid FROM ProductSales; |
返回“ProductID”和 ProductID 部分,从字符位置 5 开始,包含 4 个字符,并在列 testMid 中显示结果。 |
VBA 示例
注意: 以下示例演示了如何在 Visual Basic for Applications (VBA) 模块中使用此函数。 有关使用 VBA 的详细信息,请在搜索旁边的下拉列表中选择“开发人员参考”,并在搜索框中输入一个或多个术语。
第一个示例使用 Mid 函数从字符串返回指定数量的字符。
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" ' Create text string. FirstWord = Mid(MyString, 1, 3) ' Returns "Mid". LastWord = Mid(MyString, 14, 4) ' Returns "Demo". MidWords = Mid(MyString, 5) ' Returns "Function Demo".
第二个示例使用 MidB 和用户定义的函数 (MidMbcs) 也从字符串返回字符。 此处的区别在于,输入字符串为 ANSI,长度以字节为单位。
Function MidMbcs(ByVal str as String, start, length)
MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), _ start, length), vbUnicode) End Function Dim MyString MyString = "AbCdEfG" ' Where "A", "C", "E", and "G" are DBCS and "b", "d", ' and "f" are SBCS. MyNewString = Mid(MyString, 3, 4) ' Returns ""CdEf" MyNewString = MidB(MyString, 3, 4) ' Returns ""bC" MyNewString = MidMbcs(MyString, 3, 4) ' Returns "bCd"