1. 程式人生 > 實用技巧 >判斷一個字串是否由重複字串拼接,並返回重複的字串,

判斷一個字串是否由重複字串拼接,並返回重複的字串,

        /// <summary>
        /// 判斷一個字串是否由重複字串拼接,並返回重複的字串,
        /// </summary>
        /// <param name="i_Str"></param>
        /// <param name="minLength">預設重複字串最小長度為3位</param>
        /// <returns></returns>
        private string RtnStr(string i_Str,int minLength=3)
        {
            string Rtn = i_Str; 
            bool IsRe = true;
            try
            {
                string Rtn_1 = string.Empty;


                Rtn_1 = i_Str.Substring(0, minLength);
                    string[] arr = Regex.Split(i_Str, Rtn_1, RegexOptions.IgnoreCase);

                    string ReStr = string.Empty;
                    IsRe = true;
                    foreach (var item in arr)
                    {
                        if (string.IsNullOrEmpty(item)) continue;
                        if (string.IsNullOrEmpty(ReStr)) ReStr = item;
                        if (!item.Equals(ReStr))
                        {
                            IsRe = false;
                            break;
                        } 
                    }
                    if (IsRe)
                    {
                        Rtn = Rtn_1 + ReStr; 
                    } 
            }
            catch (Exception)
            {
                
                throw;
            }

            return Rtn;
        }