在C#中,Console.ReadLine()
方法通常用于从控制台读取用户输入的一行文本。然而,Console.ReadLine()
并不直接支持类似C语言中scanf
的自定义格式化输入功能。
如果你需要从控制台读取特定格式的输入,你可能需要使用正则表达式或手动解析输入字符串。下面是一个简单的示例,展示了如何使用正则表达式来读取一个包含多个整数的行,并按照指定的顺序存储这些整数:
using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
Console.WriteLine("请输入一组整数,用空格分隔:");
string input = Console.ReadLine();
// 使用正则表达式匹配所有整数
Regex regex = new Regex(@"-?\d+");
MatchCollection matches = regex.Matches(input);
// 创建一个列表来存储整数
List<int> numbers = new List<int>();
// 遍历所有匹配项,并将它们转换为整数并添加到列表中
foreach (Match match in matches)
{
numbers.Add(int.Parse(match.Value));
}
// 输出读取到的整数
Console.WriteLine("读取到的整数:");
foreach (int number in numbers)
{
Console.Write(number + " ");
}
}
}
在这个示例中,我们首先提示用户输入一组用空格分隔的整数。然后,我们使用正则表达式-?\d+
来匹配所有整数(包括负数)。接下来,我们遍历所有匹配项,并将它们转换为整数并添加到一个列表中。最后,我们输出读取到的整数。
请注意,这个示例仅用于演示目的,并且假设用户输入的是有效的整数。在实际应用中,你可能需要添加额外的错误处理和验证逻辑来确保程序的健壮性。