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

如何高效提取两字符间文本?以谷歌云盘文件ID提取为例

提取Google Drive文件ID的高效方法

完全不需要两次反转字符串,这种做法绕了不必要的弯路。针对Google Drive文件URL的固定结构,以下是几种更直接高效的实现方式:

方法1:字符串分割(最简洁)

利用Google Drive文件URL的固定格式/file/d/{ID}/xxx,直接拆分定位ID:

const url = 'https://drive.google.com/file/d/1pnEX1OXXXXXXu6z9dPV5ZZ5VHqPU--6/view?usp=share_link';
const id = url.split('/file/d/')[1].split('/')[0];
console.log(id);

原理:先按/file/d/拆分URL,取第二部分后,再按/拆分取第一段,就是目标ID。

方法2:正则表达式(最灵活)

用正则精准匹配/file/d/和后续第一个/之间的内容,适配URL参数位置变化的情况:

const url = 'https://drive.google.com/file/d/1pnEX1OXXXXXXu6z9dPV5ZZ5VHqPU--6/view?usp=share_link';
const matchResult = url.match(/\/file\/d\/([^\/]+)/);
const id = matchResult ? matchResult[1] : null; // 加空判断避免无匹配时报错
console.log(id);

原理:[^\/]+表示匹配所有非/的字符,刚好对应ID的范围,即使URL没有/view后缀也能正确提取。

方法3:URL API(最规范,适合前端环境)

在浏览器或支持URL API的环境中,用标准API解析路径:

const url = new URL('https://drive.google.com/file/d/1pnEX1OXXXXXXu6z9dPV5ZZ5VHqPU--6/view?usp=share_link');
const pathParts = url.pathname.split('/');
const id = pathParts[pathParts.indexOf('d') + 1];
console.log(id);

原理:URL API自动解析路径后,找到d所在的片段,下一个片段就是文件ID,这种方式更符合Web标准,容错性更强。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 03:05:33