15,028
edits
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
使用 Excel 或 MySQL 資料庫查詢方式,簡易地將個人資料去識別化 (將姓名馬賽克) 。 | 使用 Excel 或 MySQL 資料庫查詢方式,簡易地將個人資料去識別化 (將姓名馬賽克) 。 | ||
== case1: 王小明 --> 王OO; 孤獨求敗 --> 孤OO == | == 姓名的個資去識別化 == | ||
=== case1: 王小明 --> 王O明; 孤獨求敗 --> 孤O敗 === | |||
ex: | |||
* 楊過 -> 楊O | |||
* 王小明 --> 王O明 | |||
* 孤獨求敗 --> 孤O敗 | |||
* Guo da-xia --> GOa | |||
methods | |||
* Excel: | |||
** {{kbd | key=<nowiki>=IF(LEN(A2)=2, LEFT(A2, 1)&"O", LEFT(A2, 1)&REPT("O", 1)&RIGHT(A2, 1))</nowiki>}} also applied for 3 or 4 characters | |||
=== case2: 王小明 --> 王O明; 孤獨求敗 --> 孤OO敗 === | |||
Reserve the first and last characters of name, and replace other characters with the symbol 'OO'. | |||
ex: | |||
* 楊過 --> 楊O | |||
* 王小明 --> 王O明 | |||
* 孤獨求敗 --> 孤OO敗 | |||
* Guo da-xia --> GOOOOOOOOa | |||
methods: | |||
* Excel: | |||
** {{kbd | key=<nowiki>=IF(LEN(A1)=2, LEFT(A1, 1)&"O", LEFT(A1, 1)&REPT("O", LEN(A1)-2)&RIGHT(A1, 1))</nowiki>}} | |||
** {{kbd | key=<nowiki>=REPLACE(A1, 2, 1, "O")</nowiki>}}<ref>[http://blog.xuite.net/yh96301/blog/80724141-Excel+2010%E5%A7%93%E5%90%8D%E7%9A%84%E7%AC%AC%E4%BA%8C%E5%80%8B%E5%AD%97%E5%8F%96%E4%BB%A3%E7%82%BAO Excel 2010姓名的第二個字取代為O @ 軟體使用教學 :: 隨意窩 Xuite日誌]</ref> {{exclaim}} only applied for 3 characters, NOT for 4 characters | |||
* PHP: using regular_replace | |||
<pre> | |||
if(mb_strlen($string, "UTF-8") == 2){ | |||
echo mb_substr($string, 0, 1, "UTF-8") . "O"; | |||
}else{ | |||
$pattern = '/^(\X)(\X+)(\X)/u'; | |||
preg_match($pattern, $string, $matches); | |||
echo $matches[1]. str_repeat("O", mb_strlen($string, "UTF-8") - 2) . $matches[3]; | |||
} | |||
</pre> | |||
* MySQL: | |||
<pre> | |||
SET @name := "楊過"; | |||
-- SET @name := "王小明"; | |||
-- SET @name := "孤獨求敗"; | |||
-- SET @name := "Guo da-xia"; | |||
SELECT CASE | |||
WHEN CHAR_LENGTH(@name) =2 THEN CONCAT(LEFT(@name, 1), 'O') | |||
ELSE CONCAT(LEFT(@name, 1), REPEAT('O', CHAR_LENGTH(@name)-2), RIGHT(@name, 1)) | |||
END; | |||
</pre> | |||
=== case3: 王小明 --> 王OO; 孤獨求敗 --> 孤OO === | |||
Reserve the first character of name, and replace other characters with the symbol 'OO'. | Reserve the first character of name, and replace other characters with the symbol 'OO'. | ||
| Line 25: | Line 77: | ||
</pre> | </pre> | ||
== | === case4: 王小明 --> 王OO; 孤獨求敗 --> 孤OO敗 === | ||
Replace the second and third characters with the symbol 'OO', and reserve other characters. | Replace the second and third characters with the symbol 'OO', and reserve other characters. | ||
| Line 59: | Line 111: | ||
</pre> | </pre> | ||
== 手機號碼的個資去識別化 == | |||
=== case1: 0912345678 --> 09123XXXXX8 === | |||
methods: | methods: | ||
* Excel | * Excel | ||
** {{kbd | key=<nowiki>= | ** {{kbd | key=<nowiki>=LEFT(A2, 5)&REPT("X", 5)&RIGHT(A2, 1)</nowiki>}} | ||
== references == | == references == | ||
| Line 105: | Line 125: | ||
further reading | further reading | ||
* [https://vtaiwan.tw/personal-data-protection/init/ 個資利用與去識別化 - vTaiwan.tw] | * [https://vtaiwan.tw/personal-data-protection/init/ 個資利用與去識別化 - vTaiwan.tw] | ||
* [http://www.cc.ntu.edu.tw/chinese/epaper/0040/20170320_4008.html 淺談個資遮罩] | |||
related terms | related terms | ||