假设我有一个程序要求输入全名:
string firstName;
string surName;
Console.Write("Enter your full name:");
假设用户输入字符串“Santa Clause”
如果我使用:
firstName = Console.ReadLine();
“圣诞老人”将存储到名字,但我只想要“圣诞老人”部分。
当两个或多个单词用空格分隔时,有没有办法只读取第一个单词?还有一种方法可以阅读其他单词(例如“从句”)吗?
当两个或多个单词用空格分隔时,有没有办法只读取第一个单词?
你可以使用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]
等。
试试Console.ReadLine().Split(' ')
哪个会给你string[]
使用 string.Split() 方法:
var fullName = Console.ReadLine()
firstName = fullName.Split(' ')[0];
surName = fullName.Split(' ')[1];
String.Split方法是你的朋友:
string full = "Santa Clause";
string[] parts = full.Split(' ');
string first = parts[0];
string last = parts[1];
var fullName = Console.ReadLine();
fullName = fullName.Split(' ')[0];
var firstName = fullName[0];
var surName = fullname[1];
这是假设用户输入正确的输入,例如“圣诞老人”,否则应用程序将失败。