我有这样的输入字符串(从.NET调试器粘贴):
"g: 17.00 2D nap<br>\ng: 14.30 2D dub ; 17.15 3D nap<br>\ng: 14.30 3D dub ; 17.15 2D nap<br>\ng: 17.00 2D dub<br>\ng: 17.00 3D dub"
我正在尝试通过以下方式将其分开"<br>"
:
var items = mystring.Split("<br>".ToCharArray()); // 7 elements
我得到7个列表元素,而不是5个。
看起来Split
函数也被“;”分割 分隔器。
现在,我发现了这样的解决方法:
var items = mystring.Replace("<br>", "|").Split("|".ToCharArray()); // 5 elements
但是怎么回事?
您的问题是使用ToCharArray()
。
在String.Split()
接受一个过载char[]
,你使用的,将使用每一个人作为分隔符:因此,通过传递"<br>".ToCharArray()
,这给的组成字符<br>
,请区分你的字符串由任何<
,b
,r
或>
,你”我会同意的不是你想要的。
现在,没有任何选项的单个字符串拆分没有重载,但是绕开它很容易:
var items = mystring.Split(new[] { "<br>" }, StringSplitOptions.None);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句