Como verificar se uma string contém uma substring em Go?
Olá! Comecei a estudar Go recentemente e me deparei com uma tarefa simples, à primeira vista: preciso verificar se uma string contém uma determinada substring. Em outras linguagens, como Python, eu escreveria `if "sub" in "string":`, mas em Go esse operador não funciona.
Tentei procurar na documentação, mas ainda não entendi. Preciso saber como resolver essa tarefa de forma correta e eficiente. Aqui está um exemplo de código que estou tentando escrever:
```go
package main
import "fmt"
func main() {
str := "Hello, World!"
substr := "World"
// Como verificar aqui se str contém substr?
// if str contém substr {
// fmt.Println("Substring encontrada!")
// }
}
```
Sei que em Go existe o package `strings`, mas não tenho certeza de qual função dele é adequada. Vi menções a `Contains`, `Index` e `Count`, mas não entendo qual é a diferença e qual devo usar.
Também tenho interesse em:
1. Como lidar com a diferenciação de maiúsculas e minúsculas? Preciso tratar o case das letras de alguma forma especial?
2. Existe alguma