Мне нужен метод, который возвращает все остальные символы в строке, начиная с первого символа. Например, вызов метода с («Java-язык») возвращает «Jv-agae».
private static void NewMethod(string word) { // here comes the code }
var str = "Java-language"; var xx = new string(str.Where((ch, index) => index % 2 == 0).ToArray()); Console.WriteLine(xx);
Или вот этот:
var xx = string.Join<char>("", str.Where((ch, index) => (index & 1) == 0));
вероятно немного отличается от всех остальных:: -)
protected static IEnumerable<char> EverySecondChar(string word) { for(int i = 0; i < word.Length; i += 2) yield return word[i]; } string result = new string(EverySecondChar("Java-language").ToArray());
Вот мое предложение для вас:
private string TakeEverySecondChar(string input) { var result = string.Empty; for (int i = 0; i < input.Length; i+=2) { result += input.Substring(i, 1); } return result; }
Console.Clear(); string Lang = "Java-language"; string[] LangArr = new string[Lang.Length]; char LangChar; for (int i = 0; i < Lang.Length; i++) { LangChar = Lang[i]; LangArr[i] = LangChar.ToString(); } for (int i = 0; i < LangArr.Length; i++) { Console.Write(LangArr[i]); i++; } Console.ReadLine();
public String strip2ndchar(string text) { string final=""; int i = 0; foreach (char a in text.ToCharArray()) { if (i % 2 == 0) final += a; i++; } return final; }