package main
import (
"regexp"
"fmt"
)
func main() {
var re = regexp.MustCompile(`(?s).getval{(.*?)}`)
var str = []byte(`.img-circle m-b{height:120px; width:105px;}
#upload{display:none}
.getval{
visibility: none;
width:60px;
height:60px;
}
#mce_0{position: relative;}
#mce_1{
position: relative;
visibility: none;
width:60px;
height:60px;
}
#mce_2{position: relative;}
#mce_3{position: relative;}
#mce_4{position: relative;}
null{color: #808000;}
#mce_5{position: relative;}`)
var substitution = []byte("vibility:visible;")
var count = 1 // negative counter is equivalent to global case (replace all)
str = re.ReplaceAllStringFunc(str, func(s string) string {
if count == 0 {
return s
}
count -= 1
return re.ReplaceAllString(s, substitution)
})
fmt.Println(string(str))
}
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/