how can I use a different function "InStr" this is the code that I am using and works fine but moving away from InStr is my goal
i = InStr(1, Hostname, Environment.Newline)
You can use string. IndexOf(string) to do the same thing.
Returns a Variant (Long) specifying the position of the first occurrence of one string within another. Optional. Numeric expression that sets the starting position for each search.
InStr(Int32, String, String, CompareMethod) Returns an integer specifying the start position of the first occurrence of one string within another. InStr(String, String, CompareMethod) Returns an integer specifying the start position of the first occurrence of one string within another.
String.Indexof()
with several overloads:
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)
There is also a String,LastIndexOf()
method to get the last occurance of something in a string also with a variety of overloads.
Available in MSDN or Object Browser (VIEW menu | Object Browser) in the VS near you.
i = Hostname.Indexof(Environment.Newline, 1)
If you need equivalent C# code you can use Strings
class from Microsoft.VisualBasic
assembly, thus code can be like following:
using Microsoft.VisualBasic;
. . .
i = Strings.InStr(1, Hostname, Environment.NewLine);
Another approach is using appropriate String.Indexof
function.
Links:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With