C#一些字符串操作方法

 /// <summary>
        /// 判断 oriStr 里是否包含 newStr 中的某个数值,不包含则加进去。
        /// oriStr 、newStr 存储如 "1,23,34,55"
        /// </summary>
        public static string ComcatDistStringArr(string oriStr, string newStr)
        {

            if (ArgumentValidation.IsNotEmptyString(newStr))
            {
                string retStr = String.Empty;
                string[] ret = new string[0];
                if (oriStr != null)
                {
                    ret = oriStr.Split();
                    retStr = oriStr;
                }

                string[] ci = newStr.Split(SplitWord);
                for (int i = 0; i < ci.Length; i++)
                {
                    bool find = false;
                    for (int j = 0; j < ret.Length; j++)
                    {
                        if (ci[i] == ret[j])
                        {
                            find = true;
                            break;
                        }
                    }
                    if (!find)
                        retStr += new string(Utility.SplitWord) + ci[i];
                }
                if (retStr.Length > 0)
                {
                    retStr = retStr.Trim(Utility.SplitWord);
                    retStr = retStr.TrimEnd(Utility.SplitWord);
                    return retStr;
                }
            }
            return oriStr;
        }

 

        /// <summary>
        /// 在基础功能中再加上删除由 delStr 指定的某些数值
        /// </summary>
        /// <param name="oriStr">原来的字符串数组</param>
        /// <param name="addStr">待添加的字符串数组</param>
        /// <param name="delStr">待删除的字符串数组</param>
        /// <returns></returns>
        public static string ComcatDistStringArr(string oriStr, string addStr, string delStr)
        {
            string tmpStr = ComcatDistStringArr(oriStr, addStr);
            if (ArgumentValidation.IsNotEmptyString(tmpStr) && ArgumentValidation.IsNotEmptyString(delStr))
            {
                string retStr = String.Empty;
                string[] ret = new string[0];
                ret = tmpStr.Split(SplitWord);

                string[] ci = delStr.Split(SplitWord);
                for (int i = 0; i < ret.Length; i++)
                {
                    bool find = false;
                    for (int j = 0; j < ci.Length; j++)
                    {
                        if (ci[j] == ret[i])
                        {
                            find = true;
                            break;
                        }
                    }
                    if (!find)
                        retStr += ret[i] + new string(SplitWord);
                }
                return retStr.TrimEnd(SplitWord);
            }
            return tmpStr;
        }

 

        /// <summary>
        /// 检测某个值是否在指定的字符串中存在。
        /// </summary>
        /// <param name="chkStr">待检测值</param>
        /// <param name="strArr">指定的字符串</param>
        /// <returns></returns>
        public static bool ExistInStringArr(string chkStr, string strArr)
        {

            if (ArgumentValidation.IsNotEmptyString(chkStr) && ArgumentValidation.IsNotEmptyString(strArr))
            {
                bool find = false;
                string[] ci = strArr.Split(SplitWord);
                for (int i = 0; i < ci.Length; i++)
                {
                    if (ci[i] == chkStr)
                    {
                        find = true;
                        break;
                    }
                }
                return find;
            }
            return false;
        }

 

        public static void Sort(IList obj)
        {
            if (obj == null)
            {
                return;
            }
            Object tmp;
            for (int i = 0; i < obj.Count; i++)
            {
                //切记,每次都要从第一个开始比。最后的不用再比。
                for (int j = 0; j < obj.Count - i - 1; j++)
                {
                    //对邻接的元素进行比较,如果后面的小,就交换
                    if (((IComparer)obj[j]).Compare(obj[j], (obj[j + 1])) > 0)
                    {
                        tmp = obj[j];
                        obj[j] = obj[j + 1];
                        obj[j + 1] = tmp;
                    }
                }
            }
        }

 

        public static string CleanString(string inputString, int maxLength)
        {

            StringBuilder retVal = new StringBuilder();

            if ((inputString != null) && (inputString != String.Empty))
            {
                inputString = inputString.Trim();

                if (inputString.Length > maxLength)
                    inputString = inputString.Substring(0, maxLength);

                for (int i = 0; i < inputString.Length; i++)
                {
                    switch (inputString[i])
                    {
                        case '"':
                            retVal.Append("&quot;");
                            break;
                        case '<':
                            retVal.Append("&lt;");
                            break;
                        case '>':
                            retVal.Append("&gt;");
                            break;
                        default:
                            retVal.Append(inputString[i]);
                            break;
                    }
                }

                retVal.Replace("'", " ");
            }

            return retVal.ToString();

        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值