AHK: найти текст и заменить все - PullRequest
0 голосов
/ 14 февраля 2019

Как заменить буквы ve в конце каждого слова буквами на.Пожалуйста, посмотрите на картинку: Я знаю, что это слово неверно, но это только пример для уточнения Такое кодовое предложение:

#IfWinActive ahk_class Chrome_WidgetWin_1
F2::
    Clipboard := ""
    Send, ^+{End}
    Send, ^c
    ClipWait
    Clipboard := RegExReplace(Clipboard, "^(.*?)i(.*)", "$1o$2")
    Send, ^v
return

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Замените

Clipboard := RegExReplace(Clipboard, "^(.*?)i(.*)", "$1o$2")

на

Clipboard := RegExReplace(Clipboard, "ve\b", "on")

. \ B заставляет его совпадать только с "ve" в конце слов, например, оно изменит "vetvetve"to "vetveton" Обратите внимание, что RegExReplace чувствителен к регистру (он не изменит "VETVETVE"), чтобы сделать его нечувствительным к регистру, используйте параметр i):

Clipboard := RegExReplace(Clipboard, "i)ve\b", "on")
0 голосов
/ 15 февраля 2019

Вам не нужно регулярное выражение для этого.Вместо этого вы можете использовать простую строку заменить

#IfWinActive ahk_class Chrome_WidgetWin_1
F2::
    Clipboard := ""
    Send, ^+{End}
    Send, ^c
    ClipWait
    Clipboard := StrReplace(Clipboard, "ve", "on")
    Send, ^v
return
...