将文本文件中的所有数字除以2

问题描述 投票:0回答:1

我一直在尝试从单词中分离文本文件中的所有数字,然后通过excel中的公式运行它们,并使用类似于Notepad ++中的this的方法批量替换它们。

在我的情况下,这是行不通的,因为在整个文本中都会出现重复的数字,因此无论我做什么,搜索和替换都陷入无限循环。尤其是当涉及到小数和整数时,由于Notepad ++不能在逻辑上区分1.14、1和14,因此会变得混乱。

是否有任何方法可以直接在Notepad ++或在线某个地方执行此操作?或者,是否可以从文本中提取数字,在文本中保留数字空间,能够编辑所有值,然后将其重新插入文档中的原始位置?

search replace numbers notepad++ multiple
1个回答
0
投票

您可以在PythonScript插件中运行python脚本。

如果尚未安装,请遵循此guide

创建脚本(插件>> PythonScript >>新脚本)

复制此代码并保存文件(例如calculate.py):

import re
def calculate(match):
    return '%s' % (str(float(match.group(1))/2))

editor.rereplace('(\d+(?:\.\d+)?)', calculate)
  • 打开要更改的文件
  • 运行脚本(插件>> PythonScript >>脚本>>计算)
  • 完成

给出:

between 1.14, 1 and 14, so it gets messy.

给定示例的结果:

between 0.57, 0.5 and 7.0, so it gets messy.

屏幕截图(之前):

enter image description here

屏幕快照(之后):

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.