C# 检查变量是否只包含给定的字符串

C# check if variable only contains given string

我正在尝试使用名为 game.PlayMode 的变量,其中包含用户输入的以分号分隔的播放模式列表。该变量实际上可以包含任何内容。

示例值:

Single Player; 2-Player; 3-Player; Co-Op; Versus; Alternate 

我想检查 game.PlayMode 是否仅包含单人游戏,但我不确定该怎么做。

到目前为止:

if (game.Playmode.Contains("Single Player"))
        {
           Players = "1";
        }

但我知道这对于上面的示例值也 return 正确。仅当字符串完全匹配时,如何才能确保我的代码 return 为真?

如果变量Playmode只包含"Single Player"它等于那个字符串,对吧?

if (game.Playmode.Trim().Replace(";", "")  == "Single Player")
{
    Players = "1";
}

.. 以防万一有分号,我们把它去掉。

在 C# 中,您可以简单地使用 == 运算符:

if (game.Playmode == "Single Player")
{
   Players = "1";
}

最好删除所有 ; 和所有空格,然后再进行比较:

if (Playmode.Replace(";","").Trim()=="Single Player")
{
    Players = "1";
}