Universal Find and Replace for Google Documents in Drive
Say you have a folder of invoices in your Google Drive and you would like to change your company name in all these documents from “ABC Inc.” to “XYZ Inc.”. You can use Apps Script to find a string in multiple documents in a specific folder and replace that text with another string. You can even use regular expressions to perform the replacement.
The getDriveFolder() method is a custom function used to get a Drive folder with a specific folder path. The script retrieves all the Google Documents (with a particular MIME type) and performs Universal find and replace.
const universalFindAndReplace = () => {
const folder = DriveApp.getFolderById('FOLDER_ID');
const backup = folder.createFolder(`Backup - ${new Date().getTime()}`);
const documents = folder.getFilesByType(MimeType.GOOGLE_DOCS);
while (documents.hasNext()) {
const file = documents.next();
file.makeCopy(file.getName(), backup);
const doc = DocumentApp.openById(file.getId());
const body = doc.getBody();
// You can use regex too
body.replaceText('ABC Inc', 'XYZ Inc');
doc.saveAndClose();
}
};
Amit Agarwal
Google Developer Expert, Google Cloud Champion
Amit Agarwal is a Google Developer Expert in Google Workspace and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India.
Amit has developed several popular Google add-ons including Mail Merge for Gmail and Document Studio. Read more on Lifehacker and YourStory