.gs Code
/**
* 將中文姓名去識別化。
* @param {string} originalName 原始姓名,例如:"陳志明"。
* @return {string} 去識別化後的姓名。
*/
function anonymizeName(originalName) {
// 檢查傳入的參數是否為字串
if (typeof originalName !== "string")
return "";
const nameLength = originalName.length;
if (nameLength <= 0)
return "";
const mask = "O";
let firstLetter = originalName[0];
let lastLetter = originalName[nameLength - 1];
if (nameLength === 3) {
// 如果是 3 個字,保留第一個和最後一個字,中間以 "O" 取代
return firstLetter + mask + lastLetter;
} else if (nameLength === 4) {
// 如果是 4 個字,保留第一個和最後一個字,中間以 "OO" 取代
return firstLetter + mask.repeat(2) + lastLetter;
}
// 如果姓名長度超過 4 個字,就只顯示第一個字就好
return firstLetter + mask.repeat(nameLength - 1);
}
Sheet 內使用自訂函式
在公式欄位內設定呼叫自訂函式並指定傳入欄位,以下圖來說明,就是輸入 = anonymizeName(A2),完成設定後再下拉複製公式
公式設定完成後的去識別化效果


沒有留言:
張貼留言