Regex 在自动热键脚本中包含正则表达式

Regex 在自动热键脚本中包含正则表达式,regex,autohotkey,Regex,Autohotkey,我目前正在用AutoHotKey开发一个非常“简单”的脚本,但它涉及使用以下格式的热字符串: ::btw::by the way 它将在用户键入“btw”时检测,并将其替换为“顺便” 然而,每当我试图在冒号之间放入正则表达式时,它都会逐字解释。有没有办法将正则表达式与热字符串一起使用?可以接受解决方法。HotString本机不支持正则表达式, 但我从来没有试过 另一个选项是循环,其中包含输入命令。 这将需要一个结束字符,例如空格。 然后,您将让脚本分析输入命令使用RegExReplace返回的

我目前正在用AutoHotKey开发一个非常“简单”的脚本,但它涉及使用以下格式的热字符串:

::btw::by the way
它将在用户键入“btw”时检测,并将其替换为“顺便”


然而,每当我试图在冒号之间放入正则表达式时,它都会逐字解释。有没有办法将正则表达式与热字符串一起使用?可以接受解决方法。

HotString本机不支持正则表达式,
但我从来没有试过

另一个选项是循环,其中包含输入命令。
这将需要一个结束字符,例如空格。
然后,您将让脚本分析输入命令使用RegExReplace返回的内容。
将数字放在捕获组中的正则表达式中,并将其用作替换中的反向引用。但是,除非模式总是将数字放在同一个位置,否则我认为需要两个步骤(使用RegExMatch),如本工作示例所示:

loop
{
Input, retrieved, V, {space}
RegExMatch(retrieved, "[a-zA-Z0-9]{6}", match)
RegExMatch(match, "\d", output)
If (output != "")
Sendinput, {bs 7}%output%
}
键入六个五个字母和一个数字的任意序列,

按空格键,它将仅用数字替换序列。

请举例说明您希望完成的操作。如果用户输入任何长度为6、包含5个字母和一个数字的序列,我希望该序列仅用数字替换。我使用了一种稍有不同的解决方案,但它基于您的程序。谢谢谢谢你让我知道。:-]