如何将此字符串拆分为数组?

5 c# string

我的字符串如下:

smtp:jblack@test.com;SMTP:jb@test.com;X400:C=US;A= ;P=Test;O=Exchange;S=Jack;G=Black;
Run Code Online (Sandbox Code Playgroud)

我需要回来:

smtp:jblack@test.com
SMTP:jb@test.com
X400:C=US;A= ;P=Test;O=Exchange;S=Jack;G=Black;
Run Code Online (Sandbox Code Playgroud)

问题是分号分隔地址和X400地址的一部分.任何人都可以建议如何最好地分裂这个?

PS我应该提到订单不同所以可能是:

X400:C=US;A= ;P=Test;O=Exchange;S=Jack;G=Black;;smtp:jblack@test.com;SMTP:jb@test.com
Run Code Online (Sandbox Code Playgroud)

可以有超过3个地址,4,5.10等,包括X500地址,但它们都以smtp:SMTP:X400或X500开头.

Jon*_*eet 9

编辑:有了更新的信息,这个答案当然不会有效 - 但它仍然有用,所以我会留在这里.

你总是有三个部分,你只想分开前两个分号吗?

如果是这样,只需使用Split的重载,它允许您指定要返回的子字符串数:

string[] bits = text.Split(new char[]{';'}, 3);
Run Code Online (Sandbox Code Playgroud)