【问题标题】:What is the C# equivalent to strstr() in C?什么是 C# 相当于 C 中的 strstr()?
【发布时间】:2023-04-07 00:14:01
【问题描述】:

首先,有一个问题标题几乎完全符合我的问题(strstr() equivalent in C#),但他指的是一种方法来做一个 byte[] 比较版本。

我正在寻找一个字符串比较,它输出str1中str2第一次出现的索引,但是找不到!

string s1 = ("BetYouCantFooFind");
string s2 = ("Foo");

int idx = strstrC#(s1,s2);

肯定有等价物吗?

【问题讨论】:

    标签: c# c


    【解决方案1】:

    我想你在找IndexOf

    int idx = s1.IndexOf(s2);
    

    【讨论】:

    • C#:来自 C 背景,我发现这种语言是世界上最难最简单的语言。非常感谢您的帮助。
    • 来自 C,主要缺点是您应该考虑对象而不是独立函数。因此,如果某事与某种类型有关,它通常是该类型的成员。 Visual Studio 是你的朋友:实例化一个类型的对象,然后添加一个 '.'并简单地滚动浏览这些方法....这有助于我在开始使用 C# 时开始前进
    【解决方案2】:
    var s1 = "BetYouCantFooFind";
    var s2 = "Foo";
    var idx = s1.IndexOf(s2); // Returns -1 if not found
    

    【讨论】:

      【解决方案3】:
              Console.WriteLine("BoboTheClown".IndexOf("boT"));
      

      【讨论】:

        【解决方案4】:

        我刚刚注意到这篇旧帖子,并想扩展答案。如果您不关心在 C 中使用 memicmpstricmp 时的情况,那么您可以通过这种方式在 C# 中扩展 IndexOf

        int idx = s1.IndexOf(s2, StringComparison.OrdinalIgnoreCase);
        

        【讨论】:

          猜你喜欢
          • 2011-10-13
          • 1970-01-01
          • 1970-01-01
          • 2019-06-23
          • 2013-12-02
          • 1970-01-01
          • 1970-01-01
          • 2011-01-14
          • 2011-10-31
          相关资源
          最近更新 更多