日期:2014-05-17  浏览次数:20818 次

请教一个分割字符串的问题
以5678开头并以abcd结束的字符串的分割问题

56780000hfaihfaabcd,可以分割为0000hfaihfa

但是如果5678前面有字符且不是abcd的就不分割,该如何做呢?

如56781335678dsfadfabcd,就分割为1335678dsfadf,而不是分割为133和dsfadf

请教一个最快的算法。

------解决方案--------------------
string s = "56781335678dsfadfabcd";
if (s.StartsWith("5678")) s = "abcd" + s;
if (s.EndsWith("abcd")) s = s + "5678";
string[] result = s.Split(new string[] { "abcd5678" }, StringSplitOptions.RemoveEmptyEntries);