c# 用*号隐藏用户名、手机号的中间部分

c# 用*号隐藏用户名、手机号的中间部分,第1张

        /// 
        /// 用*号隐藏部分用户名、手机号
        /// 
        /// 
        /// 
        public static string ConverUserNameToAnonymous(this string userName)
        {
            string userNameAfterReplaced;
            try
            {
                int nameLength = userName.Length;
                if (nameLength <= 2 && nameLength >= 1)
                {
                    if (nameLength == 1)
                    {
                        userNameAfterReplaced = "*";
                    }
                    else
                    {
                        userNameAfterReplaced = "**";
                    }
                }
                else
                {
                    int num1, num2, num3;
                    num2 = (int)Math.Ceiling((double)nameLength / 3);
                    num1 = (int)Math.Floor((double)nameLength / 3);
                    num3 = nameLength - num1 - num2;
                    StringBuilder starStr = new StringBuilder();
                    for (int i = 0; i < num2; i++)
                    {
                        starStr.Append("*");
                    }
                    userNameAfterReplaced = $"{userName.Substring(0, num1)}{starStr}{userName.Substring(num1 + num2, num3)}";
                }
            }
            catch (Exception)
            {
                userNameAfterReplaced = userName;
            }
            return userNameAfterReplaced;
        }

引用示例:

user.NickName = user.NickName.ConverUserNameToAnonymous();

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/740768.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-28
下一篇 2022-04-28

发表评论

登录后才能评论

评论列表(0条)

保存