2013-11-25 8 views
-1

Следующая функция может возвращать 9 цифр из строки.Как получить часть строки

Мой вопрос в том, передаю ли я abc = "123456", что означает его низкий, чем 9 цифр. Он показывает ошибку. Мне нужно максимум 9 цифр от данных строк. Если я пройду шесть цифр, мне понадобится шестизначная строка ошибки.

public string test() 
{ 
    string abc="asdhfjsdfkjhfiovjalksdhafbvklxkjszjhd"; 
    return abc.Substring(0, 9); 
} 
+3

return abc.Length <9? abc: abc.Substring (0, 9); –

+0

Хотя люди не любят тернарного оператора, это может помешать тому, чтобы стать лучшим игроком –

+2

@ AdamKewley Люди не любят его? Я использую это все время. – DGibbs

ответ

2
if (abc.Length < 9) 
    return abc; 
else 
    return abc.Substring(0, 9); 
7

Попробуйте это:

abc.Substring(0, Math.Min(9, abc.Length)); 

Когда ваша строка будет короче, чем 9 он будет возвращать полную строку

1

Другой способ сделать это:

string newStr = new string(abc.Take(9).ToArray()); 

Но лучше использовать Substring.

Смежные вопросы