在AHK中,我试图以match [i]的方式填充一系列匹配项。以下是我到目前为止的情况:
string = "red"
RegExMatch(string, "O)([a-z])", Match)
MsgBox % Match[1] . Match[2] . Match[3]
但是,它只返回r而不是红色。
非常感谢任何帮助。
答案 0 :(得分:1)
没有"匹配"在RegExMatch()
。文档说
在字符串Haystack中返回NeedleRegEx的最左侧出现的位置
和"模式3(匹配对象)" (这是你用的)说
匹配对象[...]检索[s] 整体匹配的位置,长度和值以及每个捕获的子模式(如果存在)。
意思是,子模式仅适用于最左边的匹配。您的表达式只包含一个子模式:([a-z])
。
要在同一个字符串中捕获多个匹配项(同一个表达式),您必须围绕它构建一个循环并相应地移动StartingPosition
参数。