Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用字符串的delim标记字符串_C#_C++_C_Winapi - Fatal编程技术网

C# 用字符串的delim标记字符串

C# 用字符串的delim标记字符串,c#,c++,c,winapi,C#,C++,C,Winapi,如果我有一根像 这是一个将被这个和那个分开的字符串 我想得到的分裂结果如下 是一个将被拆分的字符串 那 这是一根绳子 将被此和 1和2被此项拆分 3和4被那分开了 我的解决方案是使用字符串到字符串的映射,并将结果存储在另一个类型相同的字符串到字符串的映射中。但是,对于更复杂和更长的文本,存储在映射中的结果会重复,即,如上述1和3中所示,子字符串是字符串,并且重复,这种冗余会产生不正确的统计结果 请提供一个更好的解决方案,用不同的长字符串分隔符来标记长字符串,好吗 string myString

如果我有一根像

这是一个将被这个和那个分开的字符串

我想得到的分裂结果如下

是一个将被拆分的字符串 那 这是一根绳子 将被此和 1和2被此项拆分 3和4被那分开了

我的解决方案是使用字符串到字符串的映射,并将结果存储在另一个类型相同的字符串到字符串的映射中。但是,对于更复杂和更长的文本,存储在映射中的结果会重复,即,如上述1和3中所示,子字符串是字符串,并且重复,这种冗余会产生不正确的统计结果

请提供一个更好的解决方案,用不同的长字符串分隔符来标记长字符串,好吗

string myString = "This is a string that will be splitted by this and that";
string foo = myString.ToUpper();

string[] byThis = foo.Split(new string[] { "THIS" }, StringSplitOptions.RemoveEmptyEntries);
string[] byThat = foo.Split(new string[] { "THAT" }, StringSplitOptions.RemoveEmptyEntries);

string[] all = foo.Split(new string[] { "THAT", "THIS" }, StringSplitOptions.RemoveEmptyEntries);
或者你也可以使用正则表达式

string[] all = System.Text.RegularExpressions.Regex.Split(myString, "your pattern", System.Text.RegularExpressions.RegexOptions.IgnoreCase);
或者你也可以使用正则表达式

string[] all = System.Text.RegularExpressions.Regex.Split(myString, "your pattern", System.Text.RegularExpressions.RegexOptions.IgnoreCase);

C、C++和C都是不同的语言。你为其中一个所用的东西不是你为其他人所用的。那么你想要哪种语言的答案?你用哪种语言工作?这实际上与Windows API有什么关系?任何一种语言都是好的,我很抱歉忘记说我可能只需要伪代码或解释方法来做这件事。C、C++和C都是不同的语言。你为其中一个所用的东西不是你为其他人所用的。那么你想要哪种语言的答案?你用哪种语言工作?这实际上与Windows API有什么关系呢?以上任何一种语言都可以,很抱歉,我忘记了我可能只需要伪代码或解释过的方法来实现这一点。非常感谢你的代码。如果我不允许使用正则表达式,而只能使用列表、数组、字典,请您推荐什么方法?@Tokenized:不客气,如果这个答案回答了您的问题,那么您可以这样做,这样其他人就会知道它解决了您的问题。非常感谢您的代码。如果我不允许使用正则表达式,而只能使用列表、数组、字典,那么您可以建议使用什么方法?@Tokenized:不客气,如果这个答案回答了您的问题,那么您可以这样做,以便其他人知道它解决了您的问题。