[英]asp.net c# explode string to array
我在 C# 中有一个这样的字符串:
string s = "_4_5_81_9_2";
我想将它分解为这样的数组:
string A[]={4,5,81,9,2}
用php我是通过explode函数来做的:
$A = explode("_", $s);
C# 中的类似方式是什么?
正确的调用是
string s = "_4_5_81_9_2";
string[] A = s.Split(new char[] { '_' }, StringSplitOptions.RemoveEmptyEntries);
在要拆分的字符串的开头有一个下划线。 如果您只想要需要使用 StringSplitOptions.RemoveEmptyEntries 调用的数字以避免初始空白字符串
只是为了完成答案(归功于@ksven 是第一个从 OP 中发现评论的人)转换为整数数组采用这种形式
int[] numbers = A.Select(x => Convert.ToInt32(x)).ToArray();
它被称为String.Split()
。 你可以 在这里看到参考。
String s = "_4_5_81_9_2" ;
String [] result = s.Split("_".ToCharArray(), StringSplitOption.RemoveEmptyEntries) ;
如果你想得到一个整数数组:
int[] result = s.Split("_".ToCharArray(), StringSplitOption.RemoveEmptyEntries).Select(c => Convert.ToInt32(c)).ToArray();
在 C# 中,您可以使用以下代码
string[] words = s.TrimStart('_').Split('_');
用这个:
string s = "_4_5_81_9_2";
String[] items = s.Split(new char[] { '_' }, StringSplitOptions.RemoveEmptyEntries);
这将删除由起始_
或双下划线产生的空条目。
string s = "_4_5_81_9_2";
if(s.StartsWith("_")){
s = s.Substring(1).Replace('_', ',');
}
string [] s2 = s.Split(',').ToArray();
//or simply...
string[] s3 = s.TrimStart('_').Split('_');
MessageBox.Show(" s2: " + s2.GetValue(0) + "" + " s: " + s.ToString()+" s3:"+s3.GetValue(0));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.