0

Java 和 Python 的 Google Apps Platform 协议指南描述了使用以下(不完整)规则*将页面标题标准化为路径:

规范化是将空格修剪 + 折叠为“-”并删除与 az、AZ、0-9、-、_ 不匹配的字符。

我找不到 Google Apps 脚本的此类文档,而且我无法找到实现此目的的辅助函数 - 最好采用与 Google 协作平台 UI 相同的方式。

我的第一次尝试 - 我知道它不完整(它不处理 Google 协作平台 UI 如何处理字符串的开头和结尾)如下所示:

str.trim().replace(/\s+/g, '-').replace(/[^a-z0-9_-]/ig, '-').toLowerCase();

我使用它的上下文是我有一个页面标题列表,我正在尝试确定该页面是否已存在于站点中。不幸的是,我不能使用文本表示来检查。

例如,使用 Google 协作平台“创建新页面 UI”,名为“004.Policy Deployment (Hoshin Kanri)”的页面将具有路径“004-policy-deployment-hoshin-kanri”。

在使用中,我正在尝试检查页面是否存在,如果存在,则执行某些操作,如果不存在则执行其他操作,如下所示:

if (mySite.getChildByName(myNewPagePath) != null) {
  // do something for pages that exist
} else {
  // do something for pages that don't exist
}

* https://developers.google.com/google-apps/sites/docs/1.0/developers_guide_protocol

问题:

  1. 是否存在标准化页面标题的现有辅助函数?
  2. 有没有更好的方法来检查页面是否已经存在?
  3. 有没有办法可以通过最终用户标题而不是路径来检查页面是否存在?
4

2 回答 2

0

您可以尝试使用 search() 方法,传入未规范化的标题,然后检查结果以查看是否有任何页面具有预期的标题。

于 2012-07-18T15:45:17.750 回答
0

您可以获取子列表并遍历标题。否则,虽然您的正则表达式对我来说看起来不错,但没有执行此操作的现有函数。

于 2012-07-04T17:14:28.127 回答