如何从谷歌表格混合文本与超链接内容中提取URL和锚文本?
Google Sheets 混合文本与超链接单元格提取URL和锚文本解决方案
现有Google Sheets内置函数仅支持提取整单元格为超链接的内容,混合文本+部分超链接的场景需使用自定义Apps Script函数实现,操作步骤如下:
- 打开目标Google Sheets表格,点击顶部菜单栏「扩展程序」→「Apps 脚本」进入脚本编辑器
- 清空编辑器内默认的
myFunction代码块,粘贴如下代码:
function EXTRACT_LINKS(cell) { // 获取单元格富文本内容 const richText = cell.getRichTextValue(); // 拆分富文本的所有样式片段 const runs = richText.getRuns(); const linkResult = []; for (let i = 0; i < runs.length; i++) { const currentUrl = runs[i].getLinkUrl(); // 仅保留带超链接的片段 if (currentUrl) { const anchorText = runs[i].getText(); linkResult.push([anchorText, currentUrl]); } } return linkResult.length ? linkResult : ""; }
- 点击编辑器顶部的保存按钮,自定义项目名称后按照提示完成脚本授权(授权时遇到Google未验证应用提示,点击「高级」→「继续前往[你的项目名]」即可,代码为本地自定义不会有安全风险)
- 回到表格页面,在空白单元格输入公式即可调用,如需提取A1单元格内的所有超链接,输入
=EXTRACT_LINKS(A1),会自动按行溢出所有锚文本和对应的URL。
若你使用提供的示例表格测试,请在
Sheet1!A1:B10以外的空白区域输入公式,避免触发受保护区域的编辑限制。
内容的提问来源于stack exchange,提问作者Wei Wen
相关产品推荐
相关产品推荐

