Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.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# 当字符串被许多空字符分隔时,将字符串解析为数组_C#_String - Fatal编程技术网

C# 当字符串被许多空字符分隔时,将字符串解析为数组

C# 当字符串被许多空字符分隔时,将字符串解析为数组,c#,string,C#,String,我有一个文件,在Notepad++中打开后,它看起来像包含由3个空字符分隔的字符串。 我试过: 但是\u test,它是拆分的结果,显示了字符串的大部分(包括那些由3个空字符分隔的字符串) 我怎样才能扭转这种局面: AAANULNULBBBNULNULCCCCNULNUL 为此: {“AAA”、“BBB”、“CCC”} 这样你就不在乎NUL重复的次数了 编辑感谢&fubo->\u stuff.Split(“NUL”,StringSplitOptions.removeMptyEntries)。To

我有一个文件,在Notepad++中打开后,它看起来像包含由3个空字符分隔的字符串。 我试过:

但是
\u test
,它是拆分的结果,显示了字符串的大部分(包括那些由3个空字符分隔的字符串)

我怎样才能扭转这种局面:

AAANULNULBBBNULNULCCCCNULNUL

为此:

{“AAA”、“BBB”、“CCC”}

这样你就不在乎NUL重复的次数了

编辑感谢&fubo->
\u stuff.Split(“NUL”,StringSplitOptions.removeMptyEntries)。ToArray()

如果NULL表示空字符,则可以使用“\0”

这样你就不在乎NUL重复的次数了

编辑感谢&fubo->
\u stuff.Split(“NUL”,StringSplitOptions.removeMptyEntries)。ToArray()


如果NULL表示空字符,则可以使用“\0”

字符串。拆分

  String source = "AAA\0\0\0BBB\0\0\0CCCC\0\0\0";

  String[] result = source.Split(
    new Char[] { '\0' }, 
    StringSplitOptions.RemoveEmptyEntries);
测试:

如果您只想按三倍NUL进行拆分:


只需
字符串。拆分

  String source = "AAA\0\0\0BBB\0\0\0CCCC\0\0\0";

  String[] result = source.Split(
    new Char[] { '\0' }, 
    StringSplitOptions.RemoveEmptyEntries);
测试:

如果您只想按三倍NUL进行拆分:


您正在分析带有控制字符的字符串
NUL
是第0个控制字符。您可以使用以下选项:

var _test = _stuff.Split(new []{(char) 0});

您正在分析带有控制字符的字符串
NUL
是第0个控制字符。您可以使用以下选项:

var _test = _stuff.Split(new []{(char) 0});
派对有点晚了,但这对你来说很好


派对迟到了一点,但这对你来说很好。

为什么不在
NULNULNUL
上拆分字符串,然后遍历数组,删除包含
NULNULNUL
的索引,这样你就剩下
AAA
BBB
,和
CCCC
您是否在
\u test
的最后一个成员中看到了大部分字符串?请注意,您传递的
3
并不是说“查找3个空字符”,而是说“最多返回3个字符串”,为什么不在
numulnul
上拆分字符串,然后遍历数组并删除包含
numulnul
的索引,这样就剩下
AAA
BBB
CCCC
您是否在
\u test
的最后一个成员中看到了大部分字符串?请注意,您传递的
3
不是说“查找3个空字符”,而是说“NUL最多返回3个字符串”。OP表示空字符(ASCII 0),而不是包含N、U和L的字符串。我将使用
StringSplitOptions。RemoveEmptyEntries
而不是通过“NUL”在另一次迭代中过滤空条目OP表示空字符(ASCII 0),而不是包含N、U和L的字符串。我将使用
StringSplitOptions。RemoveEmptyEntries
,而不是在另一次迭代中过滤空条目
  String[] result = source.Split(
    new String[] { "\0\0\0" }, 
    StringSplitOptions.RemoveEmptyEntries);
var _test = _stuff.Split(new []{(char) 0});
var cleanArray = Regex.Replace(source, @"\0+", " ")
                          .Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries);