StringReplace无法识别和替换从网页复制到剪贴板的字符串?

时间:2014-08-02 16:08:01

标签: string clipboard autohotkey str-replace

我要做的非常简单:将所选文本复制到剪贴板中,并将其他一些单词替换为其他单词。

StringReplace用新字符串替换指定的子字符串,因此它就是我实际要查找的内容。

这个小脚本应该将用户突出显示的文本复制到剪贴板中,查找字符串<name><class><race>的每一个匹配项,并用字符串Aerien替换它们,PaladinHuman

^q::
{
    Send, ^c
    ClipWait
    StringReplace, clipboard, clipboard, <name>, Aerien, All
    StringReplace, clipboard, clipboard, <class>, Paladin, All
    StringReplace, clipboard, clipboard, <race>, human, All
    Sleep, 250
    Send, ^v
}
Return

最后,它会粘贴新内容。

嗯,说...尝试在this网页的内容上使用它作为实例,特别是在写的地方:

  

我希望你能把你的腰带束紧,年轻的&lt; 上课&gt;,因为   在Northshire有工作要做。

前面提到的脚本总是<class>返回给我,而不是用Paladin替换该字符串。在记事本中使用相同的脚本而不是在该网页内有时可以工作但通常不会。

我猜测<>符号存在一些问题。

1 个答案:

答案 0 :(得分:0)

始终使用http://ahkscript.org/的AutoHotkey(当前版本,新官方网站)!来自autohotkey.com的AutoHotkey已经过时,您可能在运行脚本时遇到一些问题!

您的脚本按预期工作。当您按CTRL + q脚本副本到剪贴板选定文本时(因此您必须在按CTRL + q之前选择文本),然后在剪贴板中的文本中搜索<name><class>,{ {1}}并将其分别替换为<race>AerienPaladin。将剪贴板的内容粘贴到当前活动窗口后 1.如果你需要在当前活动窗口的特定输入字段中粘贴剪贴板的内容,那么在我看来,最好的方法是使用ImageSearch命令获取该输入字段的坐标,点击后在这些坐标和粘贴后的剪贴板内容。但是请记住,可以有其他解决方案来做这些 2.如果您需要在其他窗口中粘贴剪贴板的内容,请使用WinActivate命令激活该窗口,然后粘贴剪贴板的内容。