AutoKey Python - 如何进行正则表达式替换

时间:2012-06-24 14:26:58

标签: python regex autokey

我正在使用AutoKey,我正在试图弄清楚如何在字符串中成功执行正则表达式模式替换。作为测试,我保存了一个如下所示的脚本:

NewStr := RegExReplace("abc123123", "123$", "xyz")
keyboard.send_keys(NewStr)

脚本只返回一个空格,而不是我期望的正则表达式修改后的字符串。

我是python脚本的新手,我从AutoHotKey教程获得了代码,这与AutoKey不同,但AutoKey可能是在AutoHotKey之后建模的,所以我想我会尝试一下。

我一直遇到的问题是专门为AutoKey找到正则表达式示例。我很感激任何工具建议,这将使我能够更有效地编写与AutoKey特别合适的python脚本。在此之前,我从来不需要学习python,但由于AutoKey将它用于脚本引擎,我现在愿意学习它。

1 个答案:

答案 0 :(得分:2)

.sub(replacement, string[, count=0])

返回通过替换替换替换字符串中RE的最左边非重叠出现而获得的字符串。如果找不到模式,则返回字符串不变。

可选参数count是要替换的模式最大出现次数; count必须是非负整数。默认值0表示替换所有匹配项。

这是使用sub()方法的一个简单示例。它用颜色替换颜色名称:

>>> p = re.compile( '(blue|white|red)')
>>> p.sub( 'colour', 'blue socks and red shoes')
'colour socks and colour shoes'
>>> p.sub( 'colour', 'blue socks and red shoes', count=1)
'colour socks and red shoes'