如何获得一个string的前五个字符
我已经读过这个问题来获得string的第一个字符 。 有没有办法从C#中的string中获取前n个字符?
你可以使用Enumerable.Take像:
 char[] array = yourStringVariable.Take(5).ToArray(); 
或者你可以使用String.Substring 。
 string str = yourStringVariable.Substring(0,5); 
 请记住, String.Substring在string长度小于所需字符的情况下可能会引发exception。 
如果你想把结果返回到string,那么你可以使用:
- 
使用string构造函数和LINQ的 Takestring firstFivChar = new string(yourStringVariable.Take(5).ToArray());
这种方法的好处是不会事先检查长度。
-  另一种方法是使用String.Substring进行错误检查
喜欢:
 string firstFivCharWithSubString = !String.IsNullOrWhiteSpace(yourStringVariable) && yourStringVariable.Length >= 5 ? yourStringVariable.Substring(0, 5) : yourStringVariable; 
请尝试:
 yourString.Substring(0, 5); 
检查C#子串 , String.Substring方法
你可以使用Substring(int startIndex,int length)
 string result = str.Substring(0,5); 
子string从指定的字符位置开始并具有指定的长度。 此方法不会修改当前实例的值。 而是返回一个新string,其长度字符从当前stringMSDN中的startIndex位置开始
如果源stringless于五个字符呢? 您将通过使用上述方法得到例外。 我们可以通过条件来检查string中的字符数是否大于5,然后通过Substring得到前5个字符。 注意我已经将源string分配给firstFiveCharvariables。 如果字符小于5,那么第一个字符不会改变,所以不需要其他部分。
 string firstFiveChar = str; If(!String.IsNullOrWhiteSpace(yourStringVariable) && yourStringVariable.Length >= 5) firstFiveChar = yourStringVariable.Substring(0, 5); 
  .Substring(,)的问题是,你需要确保给定的string至less有问题的字符长度的长度,否则会引发ArgumentOutOfRangeException 。 
解决scheme1(使用“子串”):
 var firstFive = stringValue != null ? stringValue.Substring(0, stringValue.Length >= 5 ? 5 : stringValue.Length) : null; 
 使用.Substring(的缺点是.Substring(你需要检查给定string的长度)。 
解决scheme2(使用“拿”):
 var firstFive = stringValue != null ? string.Join("", stringValue.Take(5)) : null; 
使用'Take'将防止你需要检查给定string的长度。
 没有人提到如何使用Substring()进行适当的检查,所以我想为此做出贡献。 
 如果您不想使用Linq并使用Substring() ,则必须确保您的string比Substring()函数的第二个参数(长度)大。 
假设你需要前5个字符。 你应该通过适当的检查来得到它们,就像这样:
 string title = "love" // 15 characters var firstFiveChars = title.Length <= 5 ? title : title.Substring(0, 5); // firstFiveChars: "love" (4 characters) 
 没有这个检查, Substring()函数会抛出一个exception,因为它会遍历不在那里的字母。 
我想你应该已经明白了…
我不知道为什么有人提到这个。 但这是实现这一目标的最简单方法。
 string str = yourString.Remove(n); 
  n – 您需要的字符数 
例
 var zz = "7814148471"; Console.WriteLine(zz.Remove(5)); //result - 78141 
 string str = "GoodMorning" string strModified = str.Substring(0,5); 
 追加五个空格字符,然后切断前五个字符并修剪结果。 您追加的空格数量应该与您正在剪切的数字相匹配。 确保在.Substring(0,X)之前包括括号.Substring(0,X)否则您将不添加任何内容。 
 string str = (yourStringVariable + " ").Substring(0,5).Trim(); 
 使用这种技术,您不必担心在其他答案中提到的ArgumentOutOfRangeException 。 
下面是一个扩展方法,用来检查一个string是否大于所需string,并将该string缩短到最大字符数量并附加“…”。
 public static class StringExtensions { public static string Ellipsis(this string s, int charsToDisplay) { if (!string.IsNullOrWhiteSpace(s)) return s.Length <= charsToDisplay ? s : new string(s.Take(charsToDisplay).ToArray()) + "..."; return String.Empty; } } 
从C#中的string中获取前n个字符
 String yourstring="Some Text"; String first_n_Number_of_Characters=yourstring.Substring(0,n); 
我用:
 var firstFive = stringValue?.Substring(0, stringValue.Length >= 5 ? 5 : customAlias.Length); 
或者如果你想检查空白也可以select(而不是只有空):
 var firstFive = !String.IsNullOrWhiteSpace(stringValue) && stringValue.Length >= 5 ? stringValue.Substring(0, 5) : stringValue 
 或者你可以使用String.ToCharArray() 。 
 它采用int startindex和int length作为参数,并返回一个char[] 
 new string(stringValue.ToCharArray(0,5)) 
 你仍然需要确保string有合适的长度,否则会抛出一个ArgumentOutOfRangeException 
尝试下面的代码
  string Name = "Abhishek"; string firstfour = Name.Substring(0, 4); Response.Write(firstfour); 
我已经尝试了以上的答案,最好的,我认为是这一个
 @item.First_Name.Substring(0,1) 
在这我可以得到string的第一个字母