[PHP] 이모지 (Emoji) 문자 삭제 (preg_replace)
[PHP] 이모지 (Emoji) 문자 삭제 (preg_replace)
이모지 문자와 함께 별도의 특수문자들도 함께 수정
이모지 문자만 삭제하고자 할 경우 $patterns[1] ~ [5], $replacements[1] ~ [5] 등을 주석으로 막은 후 실행
이모지 문자와 함께 별도의 특수문자들도 함께 수정
이모지 문자만 삭제하고자 할 경우 $patterns[1] ~ [5], $replacements[1] ~ [5] 등을 주석으로 막은 후 실행
function h_emojiRemove ($ag_str)
{
$rt_str = '';
$emojiChar = '';
$emojiChar .= '\x{1F100}-\x{1F1FF}'; // Enclosed Alphanumeric Supplement
$emojiChar .= '\x{1F300}-\x{1F5FF}'; // Miscellaneous Symbols and Pictographs
$emojiChar .= '\x{1F600}-\x{1F64F}'; // Emoticons
$emojiChar .= '\x{1F680}-\x{1F6FF}'; // Transport And Map Symbols
$emojiChar .= '\x{1F900}-\x{1F9FF}'; // Supplemental Symbols and Pictographs
$emojiChar .= '\x{2600}-\x{26FF}'; // Miscellaneous Symbols
$emojiChar .= '\x{2700}-\x{27BF}'; // Dingbats
$patterns = array();
$patterns[0] = '/['. $emojiChar . ']+/u'; // Emoji
$patterns[1] = '/[[[]/u';
$patterns[2] = '/[]]]/u';
$patterns[3] = '/[""]/u';
$patterns[4] = '/[(c)]/u';
$patterns[5] = '/[**]/u';
$replacements = array();
$replacements[0] = ''; // pattern[0] Emoji
$replacements[1] = '['; // pattern[1] ...
$replacements[2] = ']';
$replacements[3] = '"';
$replacements[4] = '(c)';
$replacements[5] = '*';
$rt_str = preg_replace($patterns, $replacements, $ag_str);
$rt_str = trim ($rt_str);
return $rt_str;
}
// TEST
$orgStr =<<< EMOJISTR
물고기
이 글은 이모지가 아니므로 살아 남아야 함 : ⓐ*ㅁ◑┬ㅄㅫ㎕ㅣㅏㅓㅑㅐㅜㅠㅍⅣ
이 부분은 모두 없어짐 ---*-/
여기는 : []""[]**
EMOJISTR;
$rtStr = h_emojiRemove ($orgStr);
echo "<PRE>" . PHP_EOL;
echo $orgStr . PHP_EOL;
echo PHP_EOL . PHP_EOL;
echo "-----------" . PHP_EOL;
echo $rtStr . PHP_EOL;
echo "</PRE>" . PHP_EOL;