package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`\s*<script src="\/((\w+)[\w.\/]+)"><\/script>`)
var str = `<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Security-Policy" content="default-src * data: gap: https://ssl.gstatic.com; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>atomic-project</title>
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
<script src="/app.js"></script><script src="/app.js"></script><script src="/app.js"></script><script src="/app.js"></script></body>
</html>
`
var substitution = "\n<script>\n const $2Script = document.createElement('script');\n $2Script.type = 'text/javascript';\n $2Script.async = true;\n $2Script.src = '$1';\n document.body.appendChild($2Script);\n</script>\n"
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/