3

首先,有一个问题标题几乎完全匹配我的问题(在 C# 中等效的 strstr()),但他指的是一种方法来进行 byte[] 比较版本。

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

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

int idx = strstrC#(s1,s2);

肯定有等价物吗?

4

4 回答 4

9

我想你正在寻找IndexOf

int idx = s1.IndexOf(s2);
于 2012-10-04T19:10:27.353 回答
7
var s1 = "BetYouCantFooFind";
var s2 = "Foo";
var idx = s1.IndexOf(s2); // Returns -1 if not found
于 2012-10-04T19:11:51.547 回答
4
        Console.WriteLine("BoboTheClown".IndexOf("boT"));
于 2012-10-04T19:11:24.360 回答
2

我刚刚注意到这篇旧帖子,并想扩展答案。如果您不关心在 C 中使用时的情况,memicmp或者以这种方式在 C# 中stricmp扩展。IndexOf

int idx = s1.IndexOf(s2, StringComparison.OrdinalIgnoreCase);
于 2015-06-30T23:49:12.930 回答