Google Apps Script:
Пошук та заміна тексту
Як це зробити:
Google Apps Script пропонує простий спосіб пошуку та заміни тексту, особливо в Google Docs та Sheets. Нижче наведені приклади для обох.
Google Docs:
Для пошуку та заміни тексту в Google Документі ви переважно взаємодієте з класом DocumentApp
.
function searchReplaceInDoc() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
// Для пошуку та заміни конкретної фрази
body.replaceText('searchText', 'replacementText');
DocumentApp.getActiveDocument().saveAndClose();
}
// Використання
searchReplaceInDoc();
Цей фрагмент коду шукає всі випадки 'searchText'
у активному Google Документі та замінює їх на 'replacementText'
.
Google Sheets:
Аналогічно, у Google Sheets ви можете використовувати SpreadsheetApp
для виконання операцій пошуку та заміни:
function searchReplaceInSheet() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// Пошук та заміна в поточно активній таблиці
// replaceText(searchText, replacement)
sheet.createTextFinder('searchText').replaceAllWith('replacementText');
}
// Використання
searchReplaceInSheet();
У цьому прикладі createTextFinder('searchText')
шукає у активному аркуші ‘searchText’, а replaceAllWith('replacementText')
замінює всі випадки на ‘replacementText’.
Поглиблений огляд
Функціональність пошуку та заміни в Google Apps Script значною мірою зумовлена її веб-орієнтованою природою, що дозволяє скриптам безперешкодно маніпулювати текстом у різних програмах Google Apps. Історично ця можливість випливає з ширшого контексту обробки та маніпуляції текстом у програмуванні, де регулярні вирази та функції строк у таких мовах, як Perl та Python, задали високі стандарти гнучкості та потужності.
Хоча функціональність пошуку та заміни в Google Apps Script є потужною для простих замін, вона не має повних можливостей використання регулярних виразів, які знайдені в деяких інших мовах. Наприклад, хоча ви можете використовувати базові регулярні вирази у createTextFinder
в Google Sheets, опції для складного зіставлення шаблонів та маніпуляції обмежені порівняно з Perl або Python.
Для більш складних потреб обробки тексту програмісти можуть вдатися до експортування вмісту Google Docs або Sheets у формат, що може бути оброблений зовнішньо з потужнішими мовами, або використовувати Google Apps Script для виклику зовнішніх API або служб, які пропонують більш складні можливості маніпуляції з текстом.
Незважаючи на ці обмеження, для більшості типових завдань пошуку та заміни в екосистемі Google Apps, Google Apps Script пропонує просте, ефективне та високо інтегроване рішення, призначене для потреб автоматизації та скриптінгу в наборі інструментів продуктивності Google.