C# 中的 VB InStr 等效项

Dek*_*eke 2 c# vb.net

我不确定为什么会得到 的结果0,这是 的正确值a

我在VB中有

Dim searched As String = "<results>" & vbCrLf & "<field name=\""FID\""/>" & vbCrLf & "<field name=\""StartFID\""/>" & vbCrLf & "<field name=\""Vertex1\""/>" & vbCrLf & "<field name=\""Vertex2\""/>" & vbCrLf & "<field name=\""Slope\""/>" & vbCrLf & ""

Dim sought As String = "<rs FID=\""87\"" StartFID=\""87\"" Vertex1=\""29\"" Vertex2=\""30\"" Slope=\""-1\""/>"

Dim a As Integer = InStr(searched, sought)
Run Code Online (Sandbox Code Playgroud)

我想做的是得到a == 0与转换为 C# 相同的结果。

我努力了

int a = String.Compare(searched, sought);
int a = String.IndexOf(searched, sought);
int a = String.Equals(searched, sought);
Run Code Online (Sandbox Code Playgroud)

Cod*_*ter 5

C# 中的字符串是零索引的。如果a.IndexOf(b)返回0,则字符串b存在于字符串a中的位置0

如果输入中没有查找的字符串,IndexOf()则返回-1