如何在AutoHotKey中使用大写字母输入实际的热字符串?

如何在AutoHotKey中使用大写字母输入实际的热字符串?,autohotkey,Autohotkey,我在自动热键中使用热字符串,输出取决于字符是否大写。有没有办法确定触发热键的键中的字符是否大写?我试着使用一个_ThisHotkey,但它似乎不区分大小写。如果你有解决办法,请告诉我。谢谢。我不知道有什么内置方法可以做到这一点,但也许您可以创建更多的热字符串并使用以下区分大小写的方法: :C:hello:: :C:Hello:: :C:HeLLo:: :C:HELLO:: MsgBox, % A_ThisHotkey return 评论请求示例: hotstrings := &quo

我在自动热键中使用热字符串,输出取决于字符是否大写。有没有办法确定触发热键的键中的字符是否大写?我试着使用一个_ThisHotkey,但它似乎不区分大小写。如果你有解决办法,请告诉我。谢谢。

我不知道有什么内置方法可以做到这一点,但也许您可以创建更多的热字符串并使用以下区分大小写的方法:

:C:hello::
:C:Hello::
:C:HeLLo::
:C:HELLO::
    MsgBox, % A_ThisHotkey
return

评论请求示例:

hotstrings := "hello,HELLO,HeLlo,HellO,hElLo,hellO"
for each, hotstring in StrSplit(hotstrings, ",")
    Hotstring(":CB0*?:" hotstring, Func("MyFunction"))
return

MyFunction()
{
    MsgBox, % "Hotstring triggered!`n" A_ThisHotkey
}
您可以在定义热字符串之前激活

#Hotstring c
::Hello::Hi ; will be triggered only if you exactly typed these letters case-sensitive

谢谢你的帮助,但我有成千上万的热串,所以这样的事情是不可行的。我想我最终会使用类似于键盘记录器的东西。我明白了。您可以使用自动生成热字符串,这样更可行。您介意提供一个示例来说明您的意思吗?当然,我现在添加了一个。这样就创建了所有由
分隔的热字符串,它们位于字符串
hotstrings
中。谢谢。那个例子澄清了问题。然而,这种方式意味着我的平均单词将有大约100个大小写字母的组合,在这种情况下,hello将有32个组合。我不确定AHK是如何与计算机一起检测热字符串的,但也许你能做到。您认为使用键盘记录器并在最后一个单词中查找大写字母更有效吗?或者使用大约60000个热字符串,每个热字符串平均有100个组合,总共有600万个热字符串。