1

Py 文件:命名为葡萄牙语翻译器.py

with open('C:/Users/User/Desktop/Portuguesetranslator.txt') as f:
    for l in f:
        s = l.split('*')
        editor.replace(s[0],s[1])

我在 Notepad++ 中将它创建到 Python 脚本中

然后我有我的“数据库”,叫做葡萄牙语翻译器.txt

并分为

Result*Resultado* Event*Evento* .... 以及更多这样的 1k++ 示例

然后我做的过程是..我打开第三个选项卡...从互联网复制文本..并放入该选项卡..然后我通过按插件/python脚本/葡萄牙语翻译器运行脚本

它在我的整个文档中运行并搜索和替换..

那么我做错了什么?

4

2 回答 2

1

尝试正则表达式。\b是正则表达式中的单词边界命令。这意味着在正则表达式的那个点,你必须在一个词的边界上(而不是在一个词的中间)。你可以把它包裹在你的周围s[0]

import re
with open('C:/Users/User/Desktop/Portuguesetranslator.txt') as f:
    for l in f:
        s = l.split('*')
        editor = re.sub(r'\b' + s[0] + r'\b', s[1], editor)

编辑- 对于记事本++,看起来您希望最后一行是这样的:

editor.pyreplace(r'\b' + s[0] + r'\b', s[1])
于 2013-07-18T19:17:01.130 回答
0

@JoshG79 的答案对我来说不太适用(N++ 7.5.1),只需要修改最后一行:

with open('C:\Users\Administrator\Desktop\IPL\WIP\EnergyTagSubstitutions.txt') as f: for l in f: s = l.split() editor.rereplace(r'\b' + s[0] + r'\b', s[1])

于 2017-11-08T00:54:06.370 回答