Документы Google – это популярный онлайн-инструмент для обработки текста, который позволяет пользователям совместно работать и создавать документы. При работе с большими документами поиск и форматирование определенного текста вручную может занять много времени. К счастью, Google Apps Script предоставляет мощную среду сценариев, которая позволяет автоматизировать различные задачи, включая поиск и форматирование определенного текста в документе Google. В этой статье мы рассмотрим несколько методов с примерами кода, которые помогут вам эффективно выполнить эту задачу.
Метод 1: использование метода findText()
Метод findText() — это простой способ поиска определенного текста в документе Google. Вот пример:
function findAndFormatText() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var searchText = "specific text";
var foundText = body.findText(searchText);
if (foundText) {
var startOffset = foundText.getStartOffset();
var endOffset = foundText.getEndOffsetInclusive();
body.editAsText().setBold(startOffset, endOffset, true);
body.editAsText().setForegroundColor(startOffset, endOffset, "#FF0000"); // Set red color
}
}
Метод 2. Использование регулярных выражений
Регулярные выражения предоставляют мощный способ поиска шаблонов в тексте. Вот пример использования регулярного выражения для поиска и форматирования определенного текста:
function findAndFormatTextWithRegex() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var searchText = "specific text";
var foundText = body.findText("/" + searchText + "/");
if (foundText) {
var startOffset = foundText.getStartOffset();
var endOffset = foundText.getEndOffsetInclusive();
body.editAsText().setItalic(startOffset, endOffset, true);
body.editAsText().setForegroundColor(startOffset, endOffset, "#0000FF"); // Set blue color
}
}
function findAndFormatTextWithMarker() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var marker = "[SPECIFIC]";
var foundText = body.findText(marker);
if (foundText) {
var startOffset = foundText.getStartOffset() + marker.length;
var endOffset = foundText.getEndOffsetInclusive();
body.editAsText().setUnderline(startOffset, endOffset, true);
body.editAsText().setForegroundColor(startOffset, endOffset, "#00FF00"); // Set green color
}
}
Автоматизация процесса поиска и форматирования определенного текста в документе Google с помощью скриптов может сэкономить вам значительное время и усилия. В этой статье мы рассмотрели три метода: использование метода findText(), регулярных выражений и пользовательских маркеров. В зависимости от ваших конкретных требований вы можете выбрать наиболее подходящий метод для вашего случая использования. Поэкспериментируйте с этими примерами и адаптируйте их к своим потребностям, чтобы эффективно находить и форматировать определенный текст в документах Google.