StringMid
从字符串的指定位置提取一个或多个字符。
StringMid, OutputVar, InputVar, StartChar [, Count , L] NewStr := SubStr(String, StartPos [, Length]) ; 请参阅 SubStr() 函数 了解详情.
参数
- 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
使用字母 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
备注
在这个及其他所有命令中,OutputVar 和 InputVar 中可以使用相同的变量。
相关
SubStr(), StringLeft, StringRight, StringTrimLeft, StringTrimRight, IfInString, StringGetPos, StringLen, StringLower, StringUpper, StringReplace
示例
Source = Hello this is a test. StringMid, the_word_this, Source, 7, 4