You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Notepad++中按比例批量修改电子目录XML的PRICE值

批量修改XML中值的Notepad++解决方案

方法:使用PythonScript插件

Notepad++自带的正则替换无法直接完成数值计算,通过PythonScript插件可以实现基于原始价格百分比的批量调整。

步骤1:安装PythonScript插件

  • 打开Notepad++,点击顶部菜单栏「插件」→「插件管理」
  • 在「可用」标签找到「PythonScript」,勾选后点击「安装」,重启Notepad++

步骤2:编写并运行价格调整脚本

  1. 打开需要修改的XML文件
  2. 点击「插件」→「PythonScript」→「New Script」,创建新脚本文件
  3. 粘贴以下代码(修改percentage_multiplier值:如涨价10%设为1.1,降价5%设为0.95):
import xml.etree.ElementTree as ET

# 设置价格调整乘数(示例:1.1表示原价乘以110%)
percentage_multiplier = 1.1

# 获取当前文档内容
content = editor.getText()
root = ET.fromstring(content)

# 遍历所有<item>节点下的<PRICE>元素
for item in root.findall('item'):
    price_elem = item.find('PRICE')
    if price_elem is not None and price_elem.text.strip():
        try:
            original_price = float(price_elem.text.strip())
            # 计算新价格并保留两位小数
            new_price = round(original_price * percentage_multiplier, 2)
            price_elem.text = str(new_price)
        except ValueError:
            # 跳过无法转换为数字的异常价格
            continue

# 将修改后的XML转换为字符串并写入文档
updated_content = ET.tostring(root, encoding='unicode')
editor.clearAll()
editor.addText(updated_content)
  1. 保存脚本(例如命名为AdjustPrice.py)
  2. 返回XML文档,点击「插件」→「PythonScript」→「Scripts」→「AdjustPrice」执行脚本

注意事项

  • 运行前必须备份原始XML文件,防止数据丢失
  • 若需要调整小数位数,修改round()函数的第二个参数即可
  • 若XML包含命名空间,需在findall和find方法中添加命名空间前缀
  • 遇到编码问题时,可在ET.tostring中指定编码(如encoding='utf-8')

内容的提问来源于stack exchange,提问作者Aggelos NoWay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 18:43:22