C# string.split用法分解:字符串2,"3,4",5 成为:字符串数组{2},{3,4},{5}
展开全部
string str="2,\"3,4\",5";
string[] arr=str.Split('\"'); //先按双引号分割
for (int i = 0; i < arr.Length; i++)
{
arr[i] = arr[i].Trim(",".ToCharArray());//去除首尾的逗号
Console.WriteLine(arr[i]);
}
应该用Trim,Replace会把"3,4"之间的","也该去掉
string[] arr=str.Split('\"'); //先按双引号分割
for (int i = 0; i < arr.Length; i++)
{
arr[i] = arr[i].Trim(",".ToCharArray());//去除首尾的逗号
Console.WriteLine(arr[i]);
}
应该用Trim,Replace会把"3,4"之间的","也该去掉
更多追问追答
追问
同1楼,trim确实能保留3,4之间的逗号,但还差点,谢谢了
怎么处理。。。再求
追答
string str = "1,2,\"3,4\",5,6,7,\"8,9\"";
List resultArr = new List();
string[] arr = str.Split('\"'); //先按双引号分割
for (int i = 0; i < arr.Length; i++)
{
if (i % 2 == 0)
{
resultArr.AddRange(arr[i].Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries));
}
else
{
resultArr.Add(arr[i]);
}
}
foreach (string result in resultArr)
{
Console.WriteLine(result);
}
展开全部
string str="2,\"3,4\",5";
string[] arr=str.Split('\"');
for(int i=0;i<arr.Length;i++) arr[i]= arr[i].Replace(",", "");
string[] arr=str.Split('\"');
for(int i=0;i<arr.Length;i++) arr[i]= arr[i].Replace(",", "");
更多追问追答
追问
这个方法只适用与此例,但实际中可能是这样就不能处理了。
1,2,“3,4”,5,6,7,“8,9”
不过仍然谢谢了
追答
你确认一下逗号倒底是中文的还是英文的(你题目中写的是英文的,但是1,2,“3,4”,5,6,7,“8,这些都是中文逗号),而且你后面列举的引号也都是中文的,如果你需要处理这种符号问题,上面程序当然就需要更改
string str="2,\"3,4\",5";
str=str.Replace(",",",").Replace("“","\"").Replace("”","\"");
string[] arr=str.Split('\"');
for(int i=0;i<arr.Length;i++) arr[i]= arr[i].Replace(",", "");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string str = "2"+"/3,4"+"/5";
string[] arr = str.Split('/');
for (int i = 0; i < arr.Length; i++)
{
Console.WriteLine(arr[i]);
}
string[] arr = str.Split('/');
for (int i = 0; i < arr.Length; i++)
{
Console.WriteLine(arr[i]);
}
追问
此方法错误。。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询