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

如何用Bash去除文件中_PROD后连续重复的数字?

解决_PROD后连续重复数字的去重问题

需求:将文本中_PROD后缀的连续重复数字仅保留单个,例如_PROD1111转为_PROD1,保留_PRODxxxx,的结构仅去重重复数字。

原始输入(BEFORE FILE)

NET_SalesD_PROD1111,mexico
NET_Sales4_PROD22,newjersy
NET_SalesG_PROD333,bull

目标输出(AFTER FILE)

NET_SalesD_PROD1,mexico
NET_Sales4_PROD2,newjersy
NET_SalesG_PROD3,bull

解决方案:使用sed命令

你之前的正则未生效是因为没正确捕获重复数字并替换,用以下带扩展正则的sed命令即可实现:

sed -E 's/(PROD)([0-9])\2*/\1\2/g' input.txt

命令解释:

  • -E:启用扩展正则表达式,无需对括号等符号转义,简化写法
  • (PROD):捕获第一个分组,匹配固定字符串PROD
  • ([0-9]):捕获第二个分组,匹配单个数字
  • \2*:匹配第二个分组捕获到的数字的任意次重复
  • \1\2:替换为第一个分组内容(PROD)加上第二个分组的单个数字
  • g:全局替换,确保一行内所有符合规则的内容都被处理

执行该命令后,即可将原始文本转换为目标格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 21:47:03