Google Sheets中移除Getty图片链接指定字符间内容的方法
批量缩短Getty Images链接的解决方案
核心逻辑
我们只需要提取每个Getty链接末尾的数字ID,再拼接成https://www.gettyimages.com/license/[数字ID]格式即可,不用纠结你之前看到的(?i), .*?[CM]?L——那是针对其他特定场景的规则,对当前需求不适用。
正则匹配方案
查找正则
用这个正则精准定位需要替换的部分:
^https://www\.gettyimages\.com/.+/(\d+)$
^锁定字符串开头,确保只匹配完整的Getty官方链接https://www\.gettyimages\.com/匹配固定域名部分,.加转义符避免匹配任意字符.+/匹配域名后到最后一个斜杠之间的所有内容(\d+)捕获末尾的数字ID,这是唯一需要保留的部分
替换模板
把匹配到的内容替换成:
https://www.gettyimages.com/license/$1
$1自动引用正则中捕获的数字ID
各工具操作步骤
文本编辑器(VS Code/Sublime/Notepad++)
- 把所有Getty链接粘贴到一个文本文件里
- 打开「查找替换」工具(快捷键:Ctrl+H)
- 勾选「正则表达式」选项
- 在「查找内容」输入上述正则,「替换为」输入模板链接
- 点击「全部替换」,一键完成批量处理
Excel/Google Sheets
如果链接在A列单元格中:
- 在B1单元格输入公式:
=CONCATENATE("https://www.gettyimages.com/license/", RIGHT(A1, LEN(A1)-FIND("~", SUBSTITUTE(A1, "/", "~", LEN(A1)-LEN(SUBSTITUTE(A1, "/", ""))))))
- 下拉填充公式,批量生成短链接
Python脚本(适合超大量链接)
如果有数百上千条链接,用脚本效率更高:
import re # 把你的链接放到这个列表里 getty_links = [ "https://www.gettyimages.com/detail/news-photo/an-aerial-photograph-of-the-many-sprawling-buildings-at-sea-news-photo/523274042", # 更多链接... ] short_links = [] match_pattern = r"^https://www\.gettyimages\.com/.+/(\d+)$" for link in getty_links: result = re.match(match_pattern, link) if result: short_links.append(f"https://www.gettyimages.com/license/{result.group(1)}") # 打印结果或导出到文件 for short_link in short_links: print(short_link)
内容的提问来源于stack exchange,提问作者Dustin Parsons
相关产品推荐
相关产品推荐

