C# 如何基于“拆分字符串”\r\n“;在c中“当字符串值有”时\r\n\r\n“;
我有这根绳子C# 如何基于“拆分字符串”\r\n“;在c中“当字符串值有”时\r\n\r\n“;,c#,C#,我有这根绳子 var str="\r\nFeatures\r\nWins\r\n\r\n"; 我希望在“\r\n”上拆分,但两个“\r\n\r\n”之间的值为null或空白 我希望获得结果3项=Features赢得nullorwhitespace 我写了这段代码,但得到了两项=Features赢了 var val = str.TrimStart('\r', '\n', '\t').TrimEnd('\r', '\n', '\t').Split("\r\n"); 当前代码的问题是TrimEnd
var str="\r\nFeatures\r\nWins\r\n\r\n";
我希望在“\r\n”
上拆分,但两个“\r\n\r\n”之间的值为null或空白
我希望获得结果3项=Features赢得nullorwhitespace
我写了这段代码,但得到了两项=Features赢了
var val = str.TrimStart('\r', '\n', '\t').TrimEnd('\r', '\n', '\t').Split("\r\n");
当前代码的问题是
TrimEnd
调用删除了所有尾随的\r\n
字符
str.TrimStart('\r', '\n', '\t') // "Features\r\nWins\r\n\r\n"
.TrimEnd('\r', '\n', '\t') // "Features\r\nWins"
.Split("\r\n"); // ["Features", "Wins"]
对于示例文本,您可以执行以下操作以获得所需的结果。不过,根据您想对选项卡执行的操作,它不会起作用:
var str="\r\nFeatures\r\nWins\r\n\r\n";
var val = str.TrimStart('\r') // "\nFeatures\r\nWins\r\n\r\n"
.TrimStart('\n') // "Features\r\nWins\r\n\r\n"
.TrimEnd('\n') // "Features\r\nWins\r\n\r"
.TrimEnd('\r') // "Features\r\nWins\r\n"
.Split("\r\n"); // ["Features, "Wins", ""]
当前代码的问题是
TrimEnd
调用删除了所有尾随的\r\n
字符
str.TrimStart('\r', '\n', '\t') // "Features\r\nWins\r\n\r\n"
.TrimEnd('\r', '\n', '\t') // "Features\r\nWins"
.Split("\r\n"); // ["Features", "Wins"]
对于示例文本,您可以执行以下操作以获得所需的结果。不过,根据您想对选项卡执行的操作,它不会起作用:
var str="\r\nFeatures\r\nWins\r\n\r\n";
var val = str.TrimStart('\r') // "\nFeatures\r\nWins\r\n\r\n"
.TrimStart('\n') // "Features\r\nWins\r\n\r\n"
.TrimEnd('\n') // "Features\r\nWins\r\n\r"
.TrimEnd('\r') // "Features\r\nWins\r\n"
.Split("\r\n"); // ["Features, "Wins", ""]
简单的选择是,只需将“\r\n\r\n”替换为您希望在其间看到的任何内容,然后拆分
var val = str
.Replace("\r\n\r\n", "\r\nempty\r\n")
.Split(new []{"\r\n"}, System.StringSplitOptions.RemoveEmptyEntries);
简单的选择是,只需将“\r\n\r\n”替换为您希望在其间看到的任何内容,然后拆分
var val = str
.Replace("\r\n\r\n", "\r\nempty\r\n")
.Split(new []{"\r\n"}, System.StringSplitOptions.RemoveEmptyEntries);
你也可以试试这个。它还将
”
字符保留在开头和结尾,但可以通过删除结果数组的第一个和最后一个元素来排除这些字符:
var array = str.Split(new string[] { "\r\n" }, StringSplitOptions.None); //
array = ["","Features","","Wins",""]
这是参考链接:您可能也想试试这个。它还将
”
字符保留在开头和结尾,但可以通过删除结果数组的第一个和最后一个元素来排除这些字符:
var array = str.Split(new string[] { "\r\n" }, StringSplitOptions.None); //
array = ["","Features","","Wins",""]
这是参考链接:var result=str.Split(new[]{“\n”},StringSplitOptions.None)。其中(s=>!s.Equals(“\r”)。ToArray()代码>var result=str.Split(新[]{“\n”},StringSplitOptions.None)。其中(s=>!s.Equals(“\r”)。ToArray()代码>