Class ContainerElement

ContainerElement

他の要素を含むことができる汎用要素。Paragraph など、子要素を含む可能性のあるすべての要素は ContainerElement から継承されます。

メソッド

メソッド戻り値の型概要
asBody()Body現在の要素を Body として返します。
asEquation()Equation現在の要素を Equation として返します。
asFooterSection()FooterSection現在の要素を FooterSection として返します。
asFootnoteSection()FootnoteSection現在の要素を FootnoteSection として返します。
asHeaderSection()HeaderSection現在の要素を HeaderSection として返します。
asListItem()ListItem現在の要素を ListItem として返します。
asParagraph()Paragraph現在の要素を Paragraph として返します。
asTable()Table現在の要素を Table として返します。
asTableCell()TableCell現在の要素を TableCell として返します。
asTableOfContents()TableOfContents現在の要素を TableOfContents として返します。
asTableRow()TableRow現在の要素を TableRow として返します。
clear()ContainerElement要素の内容をクリアします。
copy()ContainerElement現在の要素の切り離されたディープコピーを返します。
editAsText()Text編集用に、現在の要素の Text バージョンを取得します。
findElement(elementType)RangeElement|null要素のコンテンツで、指定されたタイプの子孫を検索します。
findElement(elementType, from)RangeElement|null指定された RangeElement から開始して、要素の内容から指定された型の子孫を検索します。
findText(searchPattern)RangeElement|null正規表現を使用して、要素のコンテンツで指定されたテキスト パターンを検索します。
findText(searchPattern, from)RangeElement|null指定された検索結果から開始して、要素の内容で指定されたテキスト パターンを検索します。
getAttributes()Object要素の属性を取得します。
getChild(childIndex)Element指定された子インデックスにある子要素を取得します。
getChildIndex(child)Integer指定された子要素の子インデックスを取得します。
getLinkUrl()String|nullリンクの URL を取得します。
getNextSibling()Element|null要素の次の兄弟要素を取得します。
getNumChildren()Integer子どもの数を取得します。
getParent()ContainerElement|null要素の親要素を取得します。
getPreviousSibling()Element|null要素の前の兄弟要素を取得します。
getText()String要素のコンテンツをテキスト文字列として取得します。
getTextAlignment()TextAlignment|nullテキストの配置を取得します。
getType()ElementType要素の ElementType を取得します。
isAtDocumentEnd()Boolean要素が Document の末尾にあるかどうかを判断します。
merge()ContainerElement|null要素を同じタイプの前の兄弟要素とマージします。
removeFromParent()ContainerElement|null要素を親から削除します。
replaceText(searchPattern, replacement)Element正規表現を使用して、指定されたテキスト パターンのすべての出現箇所を、指定された置換文字列に置き換えます。
setAttributes(attributes)ContainerElement要素の属性を設定します。
setLinkUrl(url)ContainerElementリンクの URL を設定します。
setTextAlignment(textAlignment)ContainerElementテキストの配置を設定します。

詳細なドキュメント

asBody()

現在の要素を Body として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

Body - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asEquation()

現在の要素を Equation として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

Equation - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asFooterSection()

現在の要素を FooterSection として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

FooterSection - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asFootnoteSection()

現在の要素を FootnoteSection として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

FootnoteSection - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asHeaderSection()

現在の要素を HeaderSection として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

HeaderSection - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asListItem()

現在の要素を ListItem として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

ListItem - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asParagraph()

現在の要素を Paragraph として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

Paragraph - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asTable()

現在の要素を Table として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

Table - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asTableCell()

現在の要素を TableCell として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

TableCell - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asTableOfContents()

現在の要素を TableOfContents として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

TableOfContents - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

asTableRow()

現在の要素を TableRow として返します。

このメソッドは、特定の型の要素であることがわかっている場合に、オートコンプリートを補助するために使用します。

戻る

TableRow - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

clear()

要素の内容をクリアします。

戻る

ContainerElement - 現在の要素。


copy()

現在の要素のデタッチされたディープコピーを返します。

要素に含まれる子要素もコピーされます。新しい要素には親がありません。

戻る

ContainerElement - 新しいコピー。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

editAsText()

編集用に現在の要素の Text バージョンを取得します。

editAsText を使用して、要素のコンテンツをリッチテキストとして操作します。editAsText モードでは、テキスト以外の要素(InlineImageHorizontalRule など)は無視されます。

削除されたテキスト範囲内に完全に含まれる子要素は、要素から削除されます。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Insert two paragraphs separated by a paragraph containing an
// horizontal rule.
body.insertParagraph(0, 'An editAsText sample.');
body.insertHorizontalRule(0);
body.insertParagraph(0, 'An example.');

// Delete " sample.\n\n An" removing the horizontal rule in the process.
body.editAsText().deleteText(14, 25);

戻る

Text - 現在の要素のテキスト バージョン


findElement(elementType)

要素のコンテンツで、指定されたタイプの子孫を検索します。

パラメータ

名前説明
elementTypeElementType検索する要素のタイプ。

戻る

RangeElement|null - 検索要素の位置を示す検索結果。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findElement(elementType, from)

指定された RangeElement から開始して、要素のコンテンツで指定されたタイプの子孫を検索します。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Define the search parameters.

let searchResult = null;

// Search until the paragraph is found.
while (
    (searchResult = body.findElement(
         DocumentApp.ElementType.PARAGRAPH,
         searchResult,
         ))) {
  const par = searchResult.getElement().asParagraph();
  if (par.getHeading() === DocumentApp.ParagraphHeading.HEADING1) {
    // Found one, update and stop.
    par.setText('This is the first header.');
    break;
  }
}

パラメータ

名前説明
elementTypeElementType検索する要素のタイプ。
fromRangeElement検索する検索結果。

戻る

RangeElement|null - 検索要素の次の位置を示す検索結果。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findText(searchPattern)

正規表現を使用して、要素のコンテンツで指定されたテキスト パターンを検索します。

JavaScript の正規表現機能の一部(キャプチャ グループやモード修飾子など)は完全にサポートされていません。

指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックと個別に照合されます。

パラメータ

名前説明
searchPatternString検索するパターン

戻る

RangeElement|null - 検索テキストの位置を示す検索結果。一致がない場合は null

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

findText(searchPattern, from)

指定された検索結果から、要素の内容で指定されたテキスト パターンを検索します。

JavaScript の正規表現機能の一部(キャプチャ グループやモード修飾子など)は完全にサポートされていません。

指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックと個別に照合されます。

パラメータ

名前説明
searchPatternString検索するパターン
fromRangeElement検索する検索結果

戻る

RangeElement|null - 検索テキストの次の位置を示す検索結果。一致するものがない場合は null

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getAttributes()

要素の属性を取得します。

結果は、有効な要素属性ごとにプロパティを含むオブジェクトです。各プロパティ名は DocumentApp.Attribute 列挙型の項目に対応しています。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Append a styled paragraph.
const par = body.appendParagraph('A bold, italicized paragraph.');
par.setBold(true);
par.setItalic(true);

// Retrieve the paragraph's attributes.
const atts = par.getAttributes();

// Log the paragraph attributes.
for (const att in atts) {
  Logger.log(`${att}:${atts[att]}`);
}

戻る

Object - 要素の属性。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getChild(childIndex)

指定された子インデックスにある子要素を取得します。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Obtain the first element in the tab.
const firstChild = body.getChild(0);

// If it's a paragraph, set its contents.
if (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {
  firstChild.asParagraph().setText('This is the first paragraph.');
}

パラメータ

名前説明
childIndexInteger取得する子要素のインデックス。

戻る

Element - 指定されたインデックスの子要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getChildIndex(child)

指定された子要素の子インデックスを取得します。

パラメータ

名前説明
childElementインデックスを取得する子要素。

戻る

Integer - 子インデックス。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getLinkUrl()

リンクの URL を取得します。

戻る

String|null - リンク URL。要素にこの属性の複数の値が含まれている場合は null

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getNextSibling()

要素の次の兄弟要素を取得します。

次の兄弟要素は、同じ親を持ち、現在の要素の後に続きます。

戻る

Element|null - 次の兄弟要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getNumChildren()

子どもの数を取得します。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Log the number of elements in the tab.
Logger.log(`There are ${body.getNumChildren()} elements in the tab's body.`);

戻る

Integer - 子の数。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getParent()

要素の親要素を取得します。

親要素に現在の要素が含まれている。

戻る

ContainerElement|null - 親要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getPreviousSibling()

要素の前の兄弟要素を取得します。

前の兄弟は同じ親を持ち、現在の要素の前にあります。

戻る

Element|null - 前の兄弟要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getText()

要素のコンテンツをテキスト文字列として取得します。

戻る

String - 要素のコンテンツ(テキスト文字列)

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getTextAlignment()

テキストの配置を取得します。使用可能な配置のタイプは、DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT です。

戻る

TextAlignment|null - テキストの配置のタイプ。テキストに複数のタイプのテキストの配置が含まれている場合、またはテキストの配置が設定されていない場合は null

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getType()

要素の ElementType を取得します。

getType() を使用して、指定された要素の正確な型を特定します。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Obtain the first element in the active tab's body.

const firstChild = body.getChild(0);

// Use getType() to determine the element's type.
if (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {
  Logger.log('The first element is a paragraph.');
} else {
  Logger.log('The first element is not a paragraph.');
}

戻る

ElementType - 要素のタイプ。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

isAtDocumentEnd()

要素が Document の末尾にあるかどうかを判断します。

戻る

Boolean - 要素がタブの末尾にあるかどうか。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

merge()

要素を同じタイプの前の兄弟要素とマージします。

統合できるのは、同じ ElementType の要素のみです。現在の要素に含まれる子要素は、前の兄弟要素に移動されます。

現在の要素がドキュメントから削除されます。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Example 1: Merge paragraphs
// Append two paragraphs to the document's active tab.
const par1 = body.appendParagraph('Paragraph 1.');
const par2 = body.appendParagraph('Paragraph 2.');
// Merge the newly added paragraphs into a single paragraph.
par2.merge();

// Example 2: Merge table cells
// Create a two-dimensional array containing the table's cell contents.
const cells = [
  ['Row 1, Cell 1', 'Row 1, Cell 2'],
  ['Row 2, Cell 1', 'Row 2, Cell 2'],
];
// Build a table from the array.
const table = body.appendTable(cells);
// Get the first row in the table.
const row = table.getRow(0);
// Get the two cells in this row.
const cell1 = row.getCell(0);
const cell2 = row.getCell(1);
// Merge the current cell into its preceding sibling element.
const merged = cell2.merge();

戻る

ContainerElement|null - マージされた要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

removeFromParent()

要素を親から削除します。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Remove all images in the active tab's body.
const imgs = body.getImages();
for (let i = 0; i < imgs.length; i++) {
  imgs[i].removeFromParent();
}

戻る

ContainerElement|null - 削除された要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

replaceText(searchPattern, replacement)

正規表現を使用して、指定されたテキスト パターンのすべての出現箇所を、指定された置換文字列に置き換えます。

検索パターンは、JavaScript の正規表現オブジェクトではなく、文字列として渡されます。そのため、パターン内のバックスラッシュはすべてエスケープする必要があります。

このメソッドは、Google の RE2 正規表現ライブラリを使用します。これにより、サポートされる構文が制限されます。

指定された正規表現パターンは、現在の要素に含まれる各テキスト ブロックと個別に照合されます。

const body =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody();

// Clear the text surrounding "Apps Script", with or without text.
body.replaceText('^.*Apps ?Script.*$', 'Apps Script');

パラメータ

名前説明
searchPatternString検索する正規表現パターン
replacementString置換に使用するテキスト

戻る

Element - 現在の要素

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setAttributes(attributes)

要素の属性を設定します。

指定された attributes パラメータは、各プロパティ名が DocumentApp.Attribute 列挙型のアイテムで、各プロパティ値が適用される新しい値であるオブジェクトでなければなりません。

const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();

// Define a custom paragraph style.
const style = {};
style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] =
    DocumentApp.HorizontalAlignment.RIGHT;
style[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri';
style[DocumentApp.Attribute.FONT_SIZE] = 18;
style[DocumentApp.Attribute.BOLD] = true;

// Append a plain paragraph.
const par = body.appendParagraph('A paragraph with custom style.');

// Apply the custom style.
par.setAttributes(style);

パラメータ

名前説明
attributesObject要素の属性。

戻る

ContainerElement - 現在の要素。

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setLinkUrl(url)

リンクの URL を設定します。

パラメータ

名前説明
urlStringリンクの URL

戻る

ContainerElement - 現在の要素

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

setTextAlignment(textAlignment)

テキストの配置を設定します。使用できる配置のタイプは、DocumentApp.TextAlignment.NORMALDocumentApp.TextAlignment.SUBSCRIPTDocumentApp.TextAlignment.SUPERSCRIPT です。

// Make the entire first paragraph in the active tab be superscript.
const documentTab =
    DocumentApp.getActiveDocument().getActiveTab().asDocumentTab();
const text = documentTab.getBody().getParagraphs()[0].editAsText();
text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);

パラメータ

名前説明
textAlignmentTextAlignment適用するテキストの配置の種類

戻る

ContainerElement - 現在の要素

承認

このメソッドを使用するスクリプトには、次の 1 つ以上のスコープによる承認が必要です。

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents