如何使用不同的函数“InStr”这是我正在使用的代码并且工作正常但远离 InStr 是我的目标
i = InStr(1, Hostname, Environment.Newline)
String.Indexof()
有几个重载:
Dim jstr = "How much wood could a woodchuck chuck if a woodchuck..."
' Find a character from a starting point
ndx = jstr.IndexOf("w"c) ' == 2 (first w)
' or within a range:
ndx = jstr.IndexOf("o"c, 12) ' == 15 first o past 12 (cOuld)
'Find a string
ndx = jstr.IndexOf("wood") ' == 9
' ...from a starting point
ndx = jstr.IndexOf("wood", 10) ' == 22 (WOODchuck)
' ...or in part of the string
ndx = jstr.IndexOf("chuck", 9, 15) ' -1 (none in that range)
' using a specified comparison method:
ndx = jstr.IndexOf("WOOD", StringComparison.InvariantCultureIgnoreCase) ' 9
ndx = jstr.IndexOf("WOOD", nFirst, StringComparison)
ndx = jstr.IndexOf("WOOD", nFirst, nLast, StringComparison)
还有一种String,LastIndexOf()
方法可以通过各种重载来获取字符串中某些内容的最后一次出现。
在您附近的 VS 中的MSDN或对象浏览器(VIEW 菜单 | 对象浏览器)中可用。
i = Hostname.Indexof(Environment.Newline, 1)
如果您需要等效的 C# 代码,您可以使用程序Strings
集中的类Microsoft.VisualBasic
,因此代码可以如下所示:
using Microsoft.VisualBasic;
. . .
i = Strings.InStr(1, Hostname, Environment.NewLine);
另一种方法是使用适当的String.Indexof
功能。
链接: