ahk吧 关注:873贴子:2,703
  • 2回复贴,共1

一个极有用的脚本,就是不会写

只看楼主收藏回复

看到一个英文单词,比如good,想知道它的意思。复制good,自动打开一个叫dictionary.text的文件,在其中查找good,查到后,复制good后面跟着的数值。比如原文是good63,那就复制63,然后打开一个叫dicitionary.PDF的文件,自动跳到第63页。63页有good的中文解释,这样pdf文件当词典用了。
这个ahk能做到吗?估计最难的是复制63那一歩,别的都发送快捷键来实现。
另一个感觉很有用的脚本已经实现:
https://tieba.baidu.com/p/6611512939


IP属地:甘肃1楼2020-04-12 09:49回复
    ;~ 读取文件,c:\a.txt就是字典
    FileRead,haystack,c:\a.txt
    ;~ 关键字
    Needle = good
    ;~ 从开始查找,设为找的第一个
    n:=1
    loop
    {
    ;~ 先找关键字位置
    StringGetPos, pos, Haystack, %Needle%,l%n%
    ;大于等于0就找到
    if pos >= 0
    {
    ;~ 关键字长度
    slen := StrLen(needle)
    ;~ 关键字后面字的位置
    slen:=slen+pos+1
    ;~ 输出为空字符
    v2:=""
    ;~ 字符后面的数字提取
    loop
    {
    ;~ 提取关键字下一位字符
    StringMid,v1,Haystack,%slen%,1
    ;~ 没找到判断数字,用绝对值取一下,是数字还是数字,字符就空了
    v1:=Abs(v1)
    ;~ 大于-1就是数字
    if v1>-1
    {
    ;~ 数字就加到V2里
    v2:=v2 v1
    ;~ 指针指向下一个字符的位置
    slen++
    }
    else
    ;~ 找到不是数字的就停止提取数字
    break
    }
    ;~ 判断提取出的是不是数字
    if v2>-1
    {
    ;~ 输出找到的页码数,也可以用send键盘输出,打开PDF加输出页码回车自己写了
    MsgBox,% v2
    break
    }
    ;~ 提取不是数字就是app查到了apple的情况,查找下一个
    else
    n++
    }
    else
    {
    MsgBox,没找到
    break
    }
    }


    IP属地:广西3楼2020-04-13 16:27
    回复
      pdf转为txt,这样比较简单


      IP属地:广东来自Android客户端4楼2020-05-01 12:58
      回复