Regular expression to extract text between square brackets
Example
package main
import (
"fmt"
"regexp"
"strings"
)
func main() {
str1 := "this is a [sample] [[string]] with [SOME] special words"
re := regexp.MustCompile(`\[([^\[\]]*)\]`)
fmt.Printf("Pattern: %v\n", re.String()) // print pattern
fmt.Println("Matched:", re.MatchString(str1)) // true
fmt.Println("\nText between square brackets:")
submatchall := re.FindAllString(str1, -1)
for _, element := range submatchall {
element = strings.Trim(element, "[")
element = strings.Trim(element, "]")
fmt.Println(element)
}
}
Output
Pattern: \[([^\[\]]*)\]
Matched: true
Text between square brackets:
sample
string
SOME
Most Helpful This Week
How to create Map using the make function in Go?
How to check if a string contains certain characters in Golang?
Regular expression to extract DNS host-name or IP Address from string
Regular expression to validate common Credit Card Numbers
How do you write multi-line strings in Go?
Example: ReadAll, ReadDir, and ReadFile from IO Package