extract emails google sheets
Mon Jun 05 2023 12:34:52 GMT+0000 (Coordinated Universal Time)
Saved by
@menaheero
function extractEmails() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var range = sheet.getRange('F:F');
var values = range.getValues();
var extractedEmails = [];
var maxEmailCount = 0;
for (var i = 0; i < values.length; i++) {
var emails = [];
if (values[i][0] !== "" && typeof values[i][0] === "string") {
var emailRegex = /[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/g;
var emailMatches = values[i][0].match(emailRegex);
if (emailMatches) {
emails = emailMatches.map(function (email) {
return [email];
});
if (emails.length > maxEmailCount) {
maxEmailCount = emails.length;
}
}
}
extractedEmails.push(emails);
}
// Adjust the range dimensions based on the maximum email count
var outputRange = sheet.getRange(1, 7, extractedEmails.length, maxEmailCount);
// Fill any remaining empty cells with empty strings
var emptyEmails = new Array(maxEmailCount).fill([""]);
for (var i = 0; i < extractedEmails.length; i++) {
extractedEmails[i] = extractedEmails[i].concat(emptyEmails.slice(extractedEmails[i].length));
}
outputRange.setValues(extractedEmails);
}
content_copyCOPY
Comments