Функция strconv.Quote
Функция strconv.Quote преобразует переданную строку в безопасный строковый литерал языка Go. Она добавляет двойные кавычки вокруг строки и заменяет все управляющие символы на их экранированные представления: например, символ новой строки заменяется на \n, табуляция на \t, а обратный слеш на \\. Первым и единственным параметром функция принимает строку для экранирования.
Синтаксис
strconv.Quote(s)
Пример
Давайте экранируем строку, содержащую двойные кавычки и обратный слеш:
package main
import (
"fmt"
"strconv"
)
func main() {
res := strconv.Quote("line1\nline2\t\"backslash\\")
fmt.Println(res)
}
Результат выполнения кода:
"line1\nline2\t\"backslash\\"
Пример
Экранирование строки с обычным текстом, не содержащим специальных символов:
package main
import (
"fmt"
"strconv"
)
func main() {
res := strconv.Quote("Hello, World!")
fmt.Println(res)
}
Результат выполнения кода:
"Hello, World!"
Пример
Экранирование пустой строки:
package main
import (
"fmt"
"strconv"
)
func main() {
res := strconv.Quote("")
fmt.Println(res)
}
Результат выполнения кода:
""
Смотрите также
-
функцию
strconv.QuoteToASCII,
которая экранирует строку в ASCII-представление с использованием escape-последовательностей -
функцию
strconv.QuoteRune,
которая экранирует руну, заключая её в одинарные кавычки -
функцию
strconv.Unquote,
которая выполняет обратное преобразование, удаляя кавычки и раскрывая escape-последовательности -
функцию
strconv.CanBackquote,
которая проверяет, можно ли представить строку без экранирования используя обратные кавычки