IfInString / IfNotInString


检查一个 variable(变量) 是否包含指定的字符串。

IfInString, var, SearchString
IfNotInString, var, SearchString
Position := InStr(Haystack, Needle [, CaseSensitive?, StartingPos]]) ; 详看 InStr() 函数

参数

var variable(变量) 的名称,为得到一个匹配而搜索它的内容。
SearchString 要搜索的字符串。匹配过程不区分大小写,除非 StringCaseSense 被启用。

注意

内置变量 %A_Space% 和 %A_Tab% 分别地包含了单个空格和单个 tab(制表符) 字符,当单独地搜索这些字符时,它们可能非常有用。

另一个命令能出现在同一行,比如下面这个例子一样。换句话说,它们是等效的:

IfInString, MyVar, abc, Gosub, Process1
IfInString, MyVar, abc
    Gosub, Process1

不过,在同一行上,已命名的命令以外的东西不被支持。例如:

IfInString, MyVar, abc, found := true  ; 无效。

相关命令

InStr(), RegExMatch(), StringGetPos, StringCaseSense, IfEqual, if var in/contains MatchList, if var between, if var is type, Blocks, Else

示例

Haystack = abcdefghijklmnopqrs
Needle = abc
IfInString, Haystack, %Needle%
{
    MsgBox, 字符串已找到。
    return
}
else
    Sleep, 1
翻译:天堂之门 menk33@163.com 2008年8月25日