| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- package main
- import (
- //"fmt"
- "strings"
- "unicode/utf8"
- )
- var key string="name"
- func main() {
- //apostrophe
- src := "aaaaaaaaaa`"
- src += `
- bbbbbbbbbbbb
- cccccccccccccccc
- `
- src += "`ddddddddddddd"
- println( PrepareJS(src) )
- }
- func PrepareJS(src string) string {
-
- idx := 0
- b:= new(strings.Builder)
- escape := false
-
- for idx < len(src) {
- rune, adj := utf8.DecodeRuneInString( src[idx:] )
-
- if rune == '\n' {
- if escape {
- b.WriteString(`\`)
- b.WriteRune(rune)
- }else{
- b.WriteRune(rune)
- }
- }else if rune == '`'{
- if escape {
- escape = false
- }else{
- escape = true
- }
- b.WriteString(`"`)
- }else{
- b.WriteRune(rune)
- }
- idx += adj
- }
-
- return b.String()
- }
|