The Index() function is defined under the strings package so, and You can find the first index value of the specified string from the original string using the Index() function.
Golang String Index()
Golang String Index() is a built-in function that returns the index of the first instance of substr in s, or -1 if substr is not present in the string. The Index() function is used to find the index value of the first instance of the given string from the original string. If the given string is not available in the original string, then this method will return -1.
To find the index of a particular substring of string In Go, use the Index() function. The Index() function accepts three arguments and returns the index of the substring.
To use the Index() function, you need to import the strings package in your program for accessing the Index() function.
Syntax
func Index(s, substr string) int
Parameters
The Index() function takes two parameters. 1) String 2) Substring.
Here, the s is the original string, and the substr is a string whose we want to find index value.
Return Value
The Index() function returns an index of the substring.
Example
See the following code.
// hello.go package main import ( "fmt" "strings" ) func main() { fmt.Println(strings.Index("Rajesh", "Raj")) fmt.Println(strings.Index("Sheldon", "Shely")) }
Output
go run hello.go 0 -1
The string index is starting from 0.
The Raj is the substring of Rajesh, and the first instance of the Raj substring is 0. So, it will return 0.
In the case of Sheldon, there is no substring Shely, and that is why it returns -1.
Check If Index() function is Case-sensitive
Let’s check if the Index() function is case-sensitive or not.
// hello.go package main import ( "fmt" "strings" ) func main() { fmt.Println(strings.Index("AppDividend", "Dividend")) fmt.Println(strings.Index("IMDb", "DB")) }
Output
go run hello.go 3 -1
It turns out, the Index() function is case sensitive because, in the case of IMDb, the Db and DB are substrings is different, and that is why it can not find it and returns -1.
In the case of AppDividend, the Dividend substring occurs at index 3, that is why it returns 3.
Finally, Golang String Index() example is over.