例如我有一行数据,我想要以空格进行分割数据,但是用双引号和 [ ] 括起来的数据不要用空格分割,请问如何实现,感谢。
class Program
{
static void Main(string[] args)
{
string strMsg = "sdg a[d124 df]sdfsd f\"s adf\"";
string str1 = getAndRemoveBody("[", "]", ref strMsg,"{0}");
string str2 = getAndRemoveBody("\"", "\"", ref strMsg,"{1}");
string[] str = strMsg.Split(" ");
for (int i = 0; i < str.Length; i++)
{
if (str[i].Contains("{0}"))
{
str[i] = str[i].Replace("{0}", str1);
}
if (str[i].Contains("{1}"))
{
str[i] = str[i].Replace("{1}", str2);
}
Console.WriteLine(str[i]);
}
Console.Read();
}
private static string getAndRemoveBody(string strHeadTag, string strTailTag,ref string str,string holder)
{
string rt = "";
int startp = str.IndexOf(strHeadTag);
int endp = str.IndexOf(strTailTag,startp + 1);
if (startp < endp && startp >= 0 && endp < str.Length)
{
rt = str.Substring(startp + strHeadTag.Length, endp - startp - strHeadTag.Length);
str = str.Replace(rt, holder);
}
return rt;
}
}