我正在尝试解析来自语音识别器的文本中的参数,我希望能够将其转换为: “int my variable string some other variable” 进入包含两个字符串的数组,如下所示: “int my variable”和“string some other variable” 如您所见,我需要使用字符串数组拆分它,然后保留我使用的分隔符。 有人知道怎么做吗?
答案 0 :(得分:0)
您可以使用此代码执行此操作,但此代码仅根据您提出的当前问题
string s = "int my variable string some other variable";
string[] sarr1 = new string[] { "string" };
string[] sarr=s.Split(sarr1, StringSplitOptions.None);
for (int i = 0; i < sarr.Length; i++)
{
if (i == sarr.Length - 1)
Console.WriteLine(sarr1[0] + sarr[i]);
else
Console.WriteLine(sarr[i]);
}
如果您使用的是数组列表,则可以使用此方法
string s = "int my variable string some other variable float is another variable float is another variable";
//you can create any string for replacement over here that
//suit or fits your requirement
s = s.Replace("int", "<@@> <##>");
s = s.Replace("float", "<$$> <%%>");
s = s.Replace("string", "<^^> <&&>");
Dictionary<string, string> dict = new Dictionary<string, string>();
string[] sarr3 = new string[] { "<@@>","<$$>","<^^>" };
string[] sarr = s.Split(sarr3, StringSplitOptions.None);
for (int i = 0; i < sarr.Length; i++)
{
string temp = sarr[i].Replace("<##>", "int").Replace("<%%>", "float").Replace("<&&>", "string");
Console.WriteLine(temp);
}