Check whether a string array contains an item (without a loop)

Check whether a string array contains an item (without a loop)

To determine whether a String array contains a given item it seems that you can’t avoid writing a loop. However, you can do it with just one line of code, using the new VB6 Join function:

' ARR is an array of string, SEARCH is the value to be searchedFound = InStr(1, vbNullChar & Join(arr, vbNullChar) & vbNullChar, _    vbNullChar & search & vbNullChar) > 0

Note that the above code assumes that no item in the array contains the Chr$(0) character.

There are several variations of the theme. For example you can check whether any item in the String array begins with the searched substring using this code:

Found = InStr(1, vbNullChar & Join(arr, vbNullChar) , vbNullChar & search) > 0

And you can check whether the searched substring appears anywhere in any element of the String array:

Found = InStr(1, Join(arr, vbNullChar) , search) > 0

See also  Essential Measures for Safeguarding Your Digital Data

About Our Editorial Process

At DevX, we’re dedicated to tech entrepreneurship. Our team closely follows industry shifts, new products, AI breakthroughs, technology trends, and funding announcements. Articles undergo thorough editing to ensure accuracy and clarity, reflecting DevX’s style and supporting entrepreneurs in the tech sphere.

See our full editorial policy.

About Our Journalist