まず、私の質問とほぼ完全に一致する質問のタイトルがあります(C#で同等のstrstr())が、彼はbyte[]比較バージョンを実行するメソッドを参照しています。
str1でstr2が最初に出現したインデックスを出力する文字列比較を探していますが、見つかりません。
string s1 = ("BetYouCantFooFind");
string s2 = ("Foo");
int idx = strstrC#(s1,s2);
確かに同等のものはありますか?
まず、私の質問とほぼ完全に一致する質問のタイトルがあります(C#で同等のstrstr())が、彼はbyte[]比較バージョンを実行するメソッドを参照しています。
str1でstr2が最初に出現したインデックスを出力する文字列比較を探していますが、見つかりません。
string s1 = ("BetYouCantFooFind");
string s2 = ("Foo");
int idx = strstrC#(s1,s2);
確かに同等のものはありますか?
私はあなたが探していると思いますIndexOf
:
int idx = s1.IndexOf(s2);
var s1 = "BetYouCantFooFind";
var s2 = "Foo";
var idx = s1.IndexOf(s2); // Returns -1 if not found
Console.WriteLine("BoboTheClown".IndexOf("boT"));
この古い投稿に気づいたので、答えを拡張したいと思います。memicmp
Cで使用する場合や、C#でこのようにstricmp
拡張する場合のように、ケースを気にしない場合。IndexOf
int idx = s1.IndexOf(s2, StringComparison.OrdinalIgnoreCase);