/// <summary>
        /// 半隐藏显示,eg.传值:13112345678,4,4;结果:1311***5678。传值:13112345678,4,4,1,"&";结果:1311&5678。
        /// </summary>
        /// <param name="str">原字符串</param>
        /// <param name="beginShowStrLength">开始显示字符长度</param>
        /// <param name="endShowStrLength">结束显示字符串长度</param>
        /// <param name="replaceShowStrLength">替换后显示字符长度 默认:-1</param>
        /// <param name="replaceSymbol">替换后显示的字符,默认:*</param>
        /// <returns></returns>
        public static string Display(this string str, int beginShowStrLength, int endShowStrLength, int replaceShowStrLength = -1, string replaceSymbol = "*")
        {
            var length = str.Length - beginShowStrLength - endShowStrLength;
            replaceShowStrLength = replaceShowStrLength == -1 ? length : replaceShowStrLength;
            var stringBuilder = new StringBuilder();
            for (int i = 0; i < replaceShowStrLength; i++)
            {
                stringBuilder.Append(replaceSymbol);
            }
            var replaceShowStr = stringBuilder.ToString();
            return Regex.Replace(str, "(\\S{" + beginShowStrLength + "})\\S{" + length + "}(\\S{" + endShowStrLength + "})", "$1" + replaceShowStr + "$2");
        }

 

相关文章:

  • 2021-12-23
  • 2022-12-23
  • 2021-11-27
  • 2022-12-23
  • 2022-02-24
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
猜你喜欢
  • 2021-06-24
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
  • 2022-12-23
  • 2022-01-02
  • 2022-12-23
相关资源
相似解决方案