小编Ren*_*ato的帖子

从Google Apps脚本上的URL获取文件ID的最简单方法

以下是我要做的事情:给定Google文档网址,我想获取文档ID以在Google云端硬盘上创建副本.我知道我可以通过一些正则表达式或替换URL来实现这一点,但由于在URL中有几种不同的表单来表示同一文档,我想找到一个通用的解决方案.

目前,这是我能想到的最好的:

function getFileIdFromUrl(url) {
  try {
    return getDocIdFromUrl(url);
  } catch (e) {
    return getSpreadsheetIdFromUrl(url);
  }
}

function getDocIdFromUrl(url) {
  var doc = null;
  try {
    doc = DocumentApp.openByUrl(url);
  } catch (e) {
    doc = DocumentApp.openByUrl(url + "/edit");
  }
  return doc.getId();
}

function getSpreadsheetIdFromUrl(url) {
  var spreadsheet = null;
  try {
    spreadsheet = SpreadsheetApp.openByUrl(url);
  } catch (e) {
    spreadsheet = SpreadsheetApp.openByUrl(url + "/edit");
  }
  return spreadsheet.getId();
}

function copy(url) { // may throw an exception if the URL is invalid …
Run Code Online (Sandbox Code Playgroud)

google-apps-script

26
推荐指数
4
解决办法
3万
查看次数

标签 统计

google-apps-script ×1