剑轩

c# 根据数字拆分字符串

电脑版发表于:2019/2/6 19:19


c# 根据数字拆分字符串,例如传一个2就可以把字符串2位2位的拆分出来

   /// <summary>
        /// 根据数字拆分字符串
        /// </summary>
        /// <param name="key">需要拆分的字符串</param>
        /// <param name="n">需要按几位拆分(一次取多少位)</param>
        /// <returns></returns>
        public List<string> SplitByNum(string key, int n)
        {

            List<string> keyword = new List<string>();

            int length = key.Length;
            //如果能除尽(就刚好n位n位的取可以取完)
            if (length % n == 0)
            {
                for (int i = 0; i < length / n; i++)
                {
                    keyword.Add(key.Substring(n * i, n));
                }
            }
            else
            {
                int mod = length % n;//取出余数,最后一次取的时候用
                for (int i = 0; i <= length / n; i++)
                {
                    if (i == length / n)
                    {
                        keyword.Add(key.Substring(n * i, mod));
                    }
                    else
                    {
                        keyword.Add(key.Substring(n * i, n));
                    }
                }
            }
            return keyword;
        }

测试一下根据2位来拆分:

 string key = "Net Core使用EF之DB First";
 List<string> keyword = SplitByNum(key, 2);

根据3位来拆分:

string key = "Net Core使用EF之DB First";
List<string> keyword = SplitByNum(key, 3);


当然这样写效率不会太高,我们可以使用先把字符串变成字符数组后在进行组合





关于TNBLOG
TNBLOG,技术分享。技术交流:群号677373950
ICP备案 :渝ICP备18016597号-1
App store Android
精彩评论
{{item.replyName}}
{{item.content}}
{{item.time}}
{{subpj.replyName}}
@{{subpj.beReplyName}}{{subpj.content}}
{{subpj.time}}
猜你喜欢