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

如何用Regex或sed截断URL中特定长目录至指定长度?

BBEdit 正则查找替换实现步骤
  1. 打开目标文本文件,调出查找替换面板(快捷键⌘+F,切换到「替换」标签)
  2. 勾选「使用正则表达式」选项
  3. 在「查找」框输入:(/AVvXsE.{20}).*?/
  4. 在「替换」框输入:\1/
  5. 点击「全部替换」即可完成批量处理

正则逻辑说明

  • (/AVvXsE.{20}):捕获组,精准匹配开头的/AVvXsE,并保留其后续20个任意字符
  • .*?/:非贪婪匹配后续所有字符,直到遇到下一个/(也就是长目录的结束位置)
  • 替换时用捕获组的内容\1加上/,实现截断效果
正则是否为最优方案?

是的,这是当前场景下的最优方案之一:

  • 所有待处理URL的目标目录结构完全统一(固定开头/AVvXsE),正则可以精准定位,处理效率极高
  • BBEdit的正则引擎对批量文本处理优化很好,几千条URL几秒就能处理完成
  • 操作简单,不需要额外编写脚本,直接在编辑器内完成
sed 实现方法

如果需要用命令行处理,sed完全可以实现,执行以下命令即可:

sed -E 's/(\/AVvXsE.{20}).*?\//\1\//g' 你的输入文件名.txt > 输出文件名.txt

sed 命令说明

  • -E:启用扩展正则表达式,支持捕获组语法
  • s/查找规则/替换内容/g:全局替换模式
  • (\/AVvXsE.{20}):和BBEdit里的捕获组逻辑一致
  • .*?\/:非贪婪匹配到下一个/
  • \1\/:替换为捕获组内容加上/

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 10:35:13