package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)(?:194 Temperature[^(\n]+|Airflow_Temperature[^(\n]+|Drive Temperature:|Temperature:) +([0-9]+)`)
var str = `WD: 194 Temperature_Celsius 0x0022 105 100 000 Old_age Always - 42
Seagate: 194 Temperature_Celsius 0x0022 034 053 000 Old_age Always - 34 (0 16 0 0 0)
Toshiba: 194 Temperature_Celsius 0x0002 122 122 000 Old_age Always - 49 (Min/Max 15/57)`
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/