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

匹配模式并替换值:将Sample.txt中CUSTOMER_ID数值替换为123456

嘿,我来帮你搞定这个替换需求!你需要把Sample.txt里所有CUSTOMER_ID :后面的数字统一改成123456,这里有几个不同场景下的实用方法,你可以根据自己的环境选择:

解决方案

1. Linux/macOS终端用sed命令

这是最快捷的终端操作方式,直接执行就能修改原文件:

# Linux版本
sed -i 's/CUSTOMER_ID : [0-9]/CUSTOMER_ID : 123456/g' Sample.txt

# macOS版本(注意需要加空引号)
sed -i '' 's/CUSTOMER_ID : [0-9]/CUSTOMER_ID : 123456/g' Sample.txt

简单解释下:

  • -i 参数是让sed直接修改原文件,不用额外输出到新文件
  • s/原匹配内容/替换内容/g 是sed的替换语法,g代表全局替换所有符合条件的内容
  • [0-9]用来匹配任意数字,不管原ID是多少位数字,都能被替换成123456

2. Windows环境用PowerShell

如果你用的是Windows,打开PowerShell执行以下命令就行:

(Get-Content Sample.txt) -replace 'CUSTOMER_ID : \d+', 'CUSTOMER_ID : 123456' | Set-Content Sample.txt

原理很简单:

  • Get-Content先读取文件里的所有内容
  • -replace用正则表达式\d+(匹配一个或多个数字)找到所有CUSTOMER_ID后的数字,替换成目标值
  • 最后通过管道把修改后的内容写回原文件

3. 跨平台的Python脚本

如果需要更灵活的处理,或者要把这个逻辑集成到代码里,用Python脚本就很合适:

import re

# 读取文件内容
with open('Sample.txt', 'r', encoding='utf-8') as f:
    content = f.read()

# 用正则替换所有CUSTOMER_ID后的数字
updated_content = re.sub(r'CUSTOMER_ID : \d+', 'CUSTOMER_ID : 123456', content)

# 把修改后的内容写回文件
with open('Sample.txt', 'w', encoding='utf-8') as f:
    f.write(updated_content)

这个脚本用正则\d+匹配所有数字ID,不管原来的ID是1111111还是2222222,甚至其他位数的数字,都能统一替换成123456,通用性很强。

内容的提问来源于stack exchange,提问作者Kaverappa KU

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 09:48:27