StringMid

从字符串的指定位置提取一个或多个字符.

[v1.0.46+] 过时的: 不推荐在新脚本中使用此命令. 请使用 SubStr 函数代替.

StringMid, OutputVar, InputVar, StartChar , Count, L

参数

OutputVar

用来存储从 InputVar 提取的子字符串的输出变量的名称.

InputVar

需要被提取子字符串的输入变量的名称. 不要把名称括在百分号中, 除非您希望使用变量的内容作为被解析的变量名.

StartChar

需提取的首个字符的位置, 可以为表达式. 与 StringGetPos 不同, 首个字符的位置为 1. 如果 StartChar 小于 1, 那么它将被视为 1. 如果 StartChar 超过了字符串的长度, 则 OutputVar 会被置空.

Count

[v1.0.43.10+]: 如果为空或省略, 这等同于指定一个足够大的整数, 以从字符串中获取所有字符.

否则, 请指定需提取的字符数, 可以为表达式. 如果 Count 小于或等于零, 那么 OutputVar 会被置空. 如果 Count 超过了 InputVar 中从 StartChar 开始计算的长度, 那么 OutputVar 会被置为 InputVar 中从 StartChar 开始的所有字符.

L

如果为空或省略, 则将提取 StartChar 右侧的字符. 否则, 请指定字母 L 以从 StartChar 开始往左边提取字符. 在后面的例子中, OutputVar 会被置为 Red:

InputVar := "The Red Fox"
StringMid, OutputVar, InputVar, 7, 3, L

如果使用了 L 选项且 StartChar 小于 1, 那么 OutputVar 会被置空. 如果 StartChar 超过了 InputVar 的长度, 那么只会提取在 Count 内的那些字符. 例如, 下面的例子会把 OutputVar 设置为 "Fox":

InputVar := "The Red Fox"
StringMid, OutputVar, InputVar, 14, 6, L

备注

在这个及其他所有命令中, OutputVarInputVar 中可以使用相同的变量.

SubStr(), StringLeft, StringRight, StringTrimLeft, StringTrimRight, IfInString, StringGetPos, StringLen, StringLower, StringUpper, StringReplace

示例

检索位于第 7 长度为 4 个字符的子字符串.

Source := "Hello this is a test."
StringMid, the_word_this, Source, 7, 4