LANG SELRCT

コードを書く場所

2019年9月5日木曜日

Googleドキュメント内のテキストを置換したい replaceText


DocumentApp.getActiveDocument().getBody()
でBodyを取得して

.replaceText(searchPattern, replacement)
で置換できるようです。



ドキュメント内に hello world という文字列があって


コード.gsの
body.replaceText("hello", "Hello")
でhello を Hello に置換できます。



コード.gs
function myFunction() {
  var doc = DocumentApp.getActiveDocument()
  var body = doc.getBody();
  body.replaceText("hello", "Hello");
}
意訳
この機能がやること
ドキュメントを取得して
Bodyを取得して
hello を Hello に置換する



補足

  • 正規表現も使えるようです
  • 一致するすべてのsearchPatternがreplacementで置換されます
    • すべて置換


ドキュメント内に
hello world
hello world2
という文字列があるとき

コード.gsの
body.replaceText("hello", "Hello");
body.replaceText("hello.*", "Hi");
に書き換えて実行すると以下のようになります。


参考

replaceText(searchPattern, replacement)
https://developers.google.com/apps-script/reference/document/text#replaceText(String,String)

Class Body
https://developers.google.com/apps-script/reference/document/body
The Body may contain ListItem, Paragraph, Table, and TableOfContents elements. For more information on document structure, see the guide to extending Google Docs.