2013-05-23 6 views
2

Скажем, у меня есть программа, которая просит Полное имя:Как читать несколько входов, разделенных пробелом из одной строки ввода?

string firstName; 
string surName; 

Console.Write("Enter your full name:"); 

Допустим, пользователь вводит строку «Санта-Клаус»

, если я использую:

firstName = Console.ReadLine(); 

«Санта Clause "будет сохранено в firstName, но я хочу только часть« Санта ».

Есть ли способ прочитать только первое слово, когда два или более слова разделены пробелом? Есть ли способ читать другие слова (например, «Предложение»)?

+0

один способ сделать это с помощью метода [String.Split] (http://msdn.microsoft.com/en-us/library/system.string.split.aspx) – GolfWolf

ответ

6

Есть ли способ, чтобы прочитать только первое слово, когда два или более слов разделенных пробелом?

Вы можете использовать метод String.Split().

Возвращает массив строк, содержащие подстроки в данном случае , которые разделяются элементами заданного массива символов Unicode.

Нравится;

string firstName = "Santa Clause"; 
string[] splitedNames = firstName.Split(new char[] {' '}, StringSplitOptions.RemoveEmptyEntries); 
Console.WriteLine(splitedNames[0]); 

Выход будет;

Santa 

Адрес DEMO.

Есть ли способ читать другие слова (например, «Положение»)?

Конечно, так как String.Split возвращают строку массива, вы можете найти другие слова, используя порядковый номер массива, как splitedNames[1], splitedNames[2] и т.д ..

1

попробовать Console.ReadLine().Split(' '), который даст вам string[]

0
var fullName = Console.ReadLine(); 
fullName = fullName.Split(' ')[0]; 

var firstName = fullName[0]; 
var surName = fullname[1]; 

Это предполагает, что пользователь вводит правильный ввод, например, как «Санта-Клаус» в противном случае заявка будет падать.

2

Используйте метод String.split():

var fullName = Console.ReadLine() 
firstName = fullName.Split(' ')[0]; 
surName = fullName.Split(' ')[1]; 
2

String.Split Method ваш друг здесь:

string full = "Santa Clause"; 
string[] parts = full.Split(' '); 
string first = parts[0]; 
string last = parts[1]; 
Смежные вопросы