package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?m)^(-)?(\d+)(?:[\s\.]0+)?\s*(?:USD)?$`)
var str = `123.00 USD
1234 USD
357.0 USD
456 00 USD
651USD
753.684 USD
123 456 USD
-123 USD
789.00 XXX
123.00 wrongcurrency
test string
$159
123`
var substitution = "\0 => \1$\2"
fmt.Println(re.ReplaceAllString(str, substitution))
}
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/