C# 使用循环概念从字符串中拆分运算符
我有一个查询,就像我有一个输入C# 使用循环概念从字符串中拆分运算符,c#,C#,我有一个查询,就像我有一个输入 AB_C + ABC_D/ * ABC_DE/ =ABC.AVO 因为我只需要拆分(*、+、=)运算符,其他运算符将以列表形式拆分。 如何在c#net中实现这一点 我期望产出 list 1={“AB_C”、“ABC_D/”、“ABC_DE/”、“ABC.AVO”} 列表2={“+”、“*”、“=”}第一个列表可以通过String.Split()实现。第二个列表可以通过迭代输入并查看每个字符来实现: static void Main(string[] ar
AB_C + ABC_D/ * ABC_DE/ =ABC.AVO
因为我只需要拆分(*、+、=)运算符,其他运算符将以列表形式拆分。
如何在c#net中实现这一点
我期望产出
list 1={“AB_C”、“ABC_D/”、“ABC_DE/”、“ABC.AVO”}
列表2={“+”、“*”、“=”}
第一个列表可以通过String.Split()实现。第二个列表可以通过迭代输入并查看每个字符来实现:
static void Main(string[] args)
{
string input = "AB_C + ABC_D/ * ABC_DE/ =ABC.AVO";
string operators = "*+=";
List<string> list1 = new List<string>(input.Split(operators.ToArray(), StringSplitOptions.RemoveEmptyEntries));
for(int i =0; i<list1.Count; i++)
{
list1[i] = list1[i].Trim();
}
List<string> list2 = new List<string>();
for(int i = 0; i < input.Length; i++)
{
if(operators.Contains(input.Substring(i,1)))
{
list2.Add(input.Substring(i, 1));
}
}
Console.WriteLine("list1 = " + String.Join(",", list1.ToArray()));
Console.WriteLine("list2 = " + String.Join(",", list2.ToArray()));
Console.ReadLine();
}
static void Main(字符串[]args)
{
字符串输入=“AB_C+ABC_D/*ABC_DE/=ABC.AVO”;
字符串运算符=“*+=”;
List list1=新列表(input.Split(operators.ToArray(),StringSplitOptions.RemoveEmptyEntries));
对于(inti=0;istring s=“AB_C+ABC_D/*ABC_DE/=ABC.AVO”;
字符串[]字符={};
字符串[]op={};
字符串l=“”;
int-idx=0;
int it=0;
对于(int i=0;i=1)
{
字符[++idx]=l;
l=“”;
}
op[it]=s[i];
}
其他的
{
l=l+s[i];
}
}
如果(长度>=1)
{
字符[++idx]=l;
}
请提供更多详细信息:到目前为止您尝试了什么?您编写的代码做了什么?这与您想要或期望的有什么不同?您在具体问题上遇到了什么困难?Stack Overflow不是一个代码编写站点。您需要自己努力解决问题,并分享该ef的结果为了使您的问题集中在您试图解决的问题的某些特定的、狭隘的方面,请阅读并获取有关如何为此网站编写一个好的、可回答的问题的更多信息。对于给您带来的不便,我深表歉意,事实上我是新使用此网站的人,我将更改我所有的错误,非常感谢您的帮助我们宝贵的时间
string s ="AB_C + ABC_D/ * ABC_DE/ =ABC.AVO";
string[] chars = {};
string[] op = {};
string l="";
int idx=0;
int it=0;
for(int i=0;i<s.length;i++)
{
if(s[i]='+' || s[i] == '=' || s[i] =='/' || s[i] =='*')
{
if(l.length>=1)
{
chars[++idx] = l;
l = "";
}
op[it] = s[i];
}
else
{
l = l + s[i];
}
}
if(l.length>=1)
{
chars[++idx] = l;
}