# SubStr

从字符串中的指定位置检索一个或多个字符.

    NewStr := SubStr(String, StartingPos , Length)

## 参数

String

  类型: 字符串

  要复制其内容的字符串. 这可能包含二进制零.

StartingPos

  类型: 整数

  指定 1 从首个字符开始, 2 从第二个开始, 依此类推. 如果 StartingPos 为 0 或超过了 String 的长度, 则返回空字符串.

  指定一个负的 StartingPos 以从右边的那个位置开始. 例如, -1 提取最后一个字符, 而 -2 提取最后两个字符. 如果 StartingPos 试图超出字符串的左端, 提取将从第一个字符开始).

Length

  类型: 整数

  如果未设置或省略, 则默认为 "全部字符". 否则, 请指定为需提取字符的最大数目(当字符串剩余部分太短时提取的数目会比最大值少).

  您还可以指定负的 Length 从而在返回字符串的末尾省略这个数目的字符(如果省略了全部或过多字符, 则返回空字符串).

## 返回值

类型: 字符串

此函数返回所请求的指定字符串的子字符串.

## 相关

RegExMatch

## 示例

在第 4 的位置检索一个长度为 3 个字符的子串.

    MsgBox SubStr("123abc789", 4, 3) ; 返回 abc

分别从一个字符串的开头和结尾处开始检索一个子串.

    Str := "The Quick Brown Fox Jumps Over the Lazy Dog"
    MsgBox SubStr(Str, 1, 19)  ; 返回 "The Quick Brown Fox"
    MsgBox SubStr(Str, -8)  ; 返回 "Lazy Dog"

dftg