首页 > 解决方案 > 如何删除点 (.) 之前的文本

问题描述

我不知道如何编写脚本使其工作。但是,我知道 autohotkey 是一个强大的程序,可以帮助我节省时间。

请帮我写一个可以删除中间名的脚本,这些中间名后面通常缩写为一个点,例如:

->斯蒂芬·M·默克尔

-> 威廉·J·莫兰

按下热键后我想要的结果:

=> 斯蒂芬·默克尔

=> 威廉·莫兰

任何帮助将不胜感激。

谢谢!!

标签: autohotkey

解决方案


试试这个:

SendMode, Input

; -- Ctrl + . -> Delete middle name from selection

^.::
While GetKeyState("Ctrl","P")
    Sleep, 25
Clipboard := ""
Send, ^c
ClipWait, 0
If ErrorLevel
    Return
Sleep, 50
Clipboard := RegExReplace(Clipboard, "([A-Z][a-z]+) [A-Z]\. ([A-Z][a-z]+)", "$1 $2")
Send, ^v
Return

推荐阅读