如何在c#中反转一个句子

How to reverse a sentence in c#

我需要一些关于如何反转句子然后 return 到正文的指导。无论哪种方式都可以,无论单词是否颠倒,例如 "Mot am I"(我是汤姆)或 "Tom am I"。

用户将输入最多 6 个单词的任何句子。然后它会被逆转。我应该使用 .Split 还是 ToCharArray?这是我目前所拥有的。

public static string Backwards() // Create Backwards Method
        {
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("Create a sentence with at least 6 words");
            string userSentence = Console.ReadLine();


            if (userSentence.Length <= 6)
            {

            }

        }

虽然我很确定我所说的不是 6 个或更少的单词,而是 6 个独立的元素。关于如何将字符串限制为一定数量的单词的提示?我搜索过的很多内容都有一些我还不太了解的更高级的概念。感谢任何帮助。

使用拆分和反转: 在此处检查拆分文档:https://msdn.microsoft.com/en-us/library/tabh47cf(v=vs.110).aspx。拆分方法有一些有趣的选项

var userSentenceArr = userSentence.split(" ");
userSentenceArr = Array.Reverse(userSentenceArr );

这可能对你有用

public static string Backwards() // Create Backwards Method
{
    Console.ForegroundColor = ConsoleColor.Green;
    Console.WriteLine("Create a sentence with at least 6 words");
    string userSentence = Console.ReadLine();
    //To count the number of words used split.length
    if(userSentence.Split(' ').Length <= 6)
    {
        userSentence = String.Join(" ", userSentence.Split(' ').Reverse());
    }
    return userSentence;
}

string.Join方法将多个字符串合并为一个。它接收两个参数:一个数组(或 IEnumerable)和一个分隔符字符串。

Splits 一个字符串到基于数组中 个字符 的子字符串。

how would I return to main method?

private static void Main(string[] args)
{
    string dorev = Backwards();
}

输入字符串:

一二三四五

输出字符串:

eno owt eerht ruof evif

string inputString = "one two three four five";
string resultString = string.Join(" ", inputString.Split(' ').Select(x => new String(x.Reverse().ToArray())));