Regular expression to extract numbers from a string in Golang
Example
package main
import (
"fmt"
"regexp"
)
func main() {
str1 := "Hello X42 I'm a Y-32.35 string Z30"
re := regexp.MustCompile(`[-]?\d[\d,]*[\.]?[\d{2}]*`)
fmt.Printf("Pattern: %v\n", re.String()) // Print Pattern
fmt.Printf("String contains any match: %v\n", re.MatchString(str1)) // True
submatchall := re.FindAllString(str1, -1)
for _, element := range submatchall {
fmt.Println(element)
}
}
Output
Pattern: [-]?\d[\d,]*[\.]?[\d{2}]*
String contains any match: true
42
-32.35
30
Most Helpful This Week
How to Unmarshal nested JSON structure?
How to verify a string only contains letters, numbers, underscores, and dashes in Golang?
Split a character string based on change of character
Regular Expression to get a string between parentheses in Golang
Example: Split, Join, and Equal from BYTES Package
Sierpinski Carpet in Go Programming Language