0

我想拆分一个字符串并将文本保留在引号内,以便我可以在命令行中正确解析参数。但是,COSMOS 不支持 Regex 和 Linq。

我需要一些方法来拆分字符串,如下所示:

This is "a very" important string "doing string things"

放入具有以下内容的数组:

{"This", "is", "a very", "important", "string", "doing string things"}

我能找到的最接近的可以解决我的问题的是这个答案。但是,我不知道如何将其转换为数组,因为我不知道如何使用 IEnumerals。

4

1 回答 1

1

我首先拆分“,然后修剪,最后使用不在“”中的模式拆分,然后将它们添加到列表字符串

public string[] toArr(string word){
    List<string> result=new List<string>();
    var split1=word.Split('"');
    for(int i=0 ; i<split1.Length ;i++){
        split1[i]=split1[i].Trim();
    }
    for(int i=0;i<split1.Length;i++){
        if(i%2==0){
            var split2=split1[i].Split(' ');
            foreach(var el in split2){
                result.Add(el);
            }
        }
        else{
            result.Add(split1[i]);
        }

    }
    string[] arr=new string[result.Count];
    for(int i=0;i<result.Count;i++){
        arr[i]=result[i];
    }
    return arr;

}
于 2020-04-09T01:04:39.237 回答