package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?<!\S)\d+(?:,\d+)? ?x ?\d+(?:,\d+)?(?: ?x ?\d+(?:,\d+)?)*`)
var str = `Square 10 x 3 x 5 mm
Round 23/22; 24,9 x 12,2 x 12,3
Square 10x2
Straight 10x2mm
Round 23/22; 24,9x12,2`
for i, match := range re.FindAllString(str, -1) {
fmt.Println(match, "found at index", i)
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Golang, please visit: https://golang.org/pkg/regexp/