首页 > 学院 > 开发设计 > 正文

字符串的分割操作

2019-11-14 13:54:04
字体:
来源:转载
供稿:网友
 static void Main(string[] args)        {            //重复分割符问题的实践和演示            //实践运用的场景||、|同为分割符,2替换为空时出现的|||情况            string content = "1234567890";            string replaceOptions = "1|a||2|||3|||4|c";            Console.WriteLine(replaceContent(content, replaceOptions));            Console.ReadKey();        }
 /**         * 适用于1|a||2|||3|c模式分割,兼容多个|||的情况         **/        public static string replaceContent(string content, string filterWord)        {            ArrayList filterWhiteSpace = new ArrayList();            spliteMuliSymbol(filterWord, ref filterWhiteSpace);            for (int i = 0; i < filterWhiteSpace.Count; i++)            {                string[] replaceArr = filterWhiteSpace[i].ToString().Split('|');                content = Regex.Replace(content, replaceArr[0], replaceArr[1]);            }            return content;        }
 public static void spliteMuliSymbol(string filterWord, ref ArrayList filterWhiteSpace)        {            //判断是否存在替换为空的情况            if (filterWord.Contains("|||"))            {                int whiteSpaceIndex = filterWord.IndexOf("|||");                ArrayList arrHalf = new ArrayList();                string firstHalf = filterWord.Substring(0, whiteSpaceIndex + 1);                string latterHalf = filterWord.Substring(whiteSpaceIndex + 3);                arrHalf.Add(firstHalf);                arrHalf.Add(latterHalf);                for (int i = 0; i < arrHalf.Count; i++)                {                    spliteMuliSymbol(arrHalf[i].ToString(), ref filterWhiteSpace);                }            }            else            {                string[] filterWordArray = Regex.Split(filterWord, @"/|/|");                foreach (string temp in filterWordArray)                {                    filterWhiteSpace.Add(temp);                }            }        }

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表