如何将字符串中的元素与“-”进行比较?

时间:2019-12-13 02:10:03

标签: c# .net string char

我有一个if语句,条件为if (String.Equals(str[0], "-")) 而且条件永远都不会满足。因此,我相信我误解了.Equals()方法的工作原理。我也尝试过Char.Equals(str[0], "-"),但是条件仍然从未满足。我正在使用C#。请帮助我了解导致此问题的原因。谢谢。

3 个答案:

答案 0 :(得分:2)

您可以尝试这种方式

using System;
public class Program
{
    public static void Main()
    {
        var str = "-";
        Console.WriteLine(str[0].Equals('-'));
    }
}

答案 1 :(得分:0)

尝试

var str = "-+=";
if(str[0].Equals('-'))
{
    MessageBox.Show("");
}

答案 2 :(得分:0)

您可以使用Regex在字符串中找到-字符的匹配项。下面的程序将检查整个字符串中是否出现-,并且如果找到匹配项,则会输出输出。

using System;
using System.Text.RegularExpressions;

public class Program
{
    public static void Main()
    {
         string str = "this is a test - string - 2124";
         showMatch(str, @"[-]");
    }

     private static void showMatch(string text, string expr) 
     {
         Match mc = Regex.Match(text, expr);         
         if ( text != string.Empty && mc.Success )
         {
             //The string consists of a - chracter,
             Console.WriteLine("String contains -");
         }
      }
}

在线演示:https://dotnetfiddle.net/mD5AEZ