регулярное выражение, чтобы частично скрыть электронную почту? [закрыто]
Это довольно просто, чего я пытаюсь достичь, я хочу, чтобы такой вклад, как
漢[email protected]
быть:
漢******@tratata.com
Таким образом, я сделал это регулярное выражение для соответствия между первым символом и символом "@".
mb_regex_encoding ('UTF-8' );
mb_ereg_replace('(?<=^.{1}).*?(?=@)','*','漢[email protected]',1);
Но проблема в том, что он будет соответствовать ей только один раз, и, таким образом, будет помещать туда только одну звезду вместо шести. Примерно так, вот что я бы получил:
漢*@tratata.com
Затем я хотел использовать mb_ereg_replace_callback, чтобы вернуть:
return $matches[1].str_repeat('*', strlen($matches[1]));
Затем я прочитал спецификации и сказал, что mb_ereg_replace_callback доступен в PHP 5.4.1 или новее.
... Есть идеи, как я могу достичь того же?