Глагол форматирования %q
Глагол форматирования %q в пакете fmt используется для вывода строковых значений в двойных кавычках с экранированием специальных символов. В качестве аргумента он принимает значение типа string или []byte и возвращает строку, заключенную в двойные кавычки, с экранированными управляющими последовательностями. Этот глагол полезен при отладке, логировании и формировании читаемого вывода строковых данных.
Синтаксис
fmt.Printf("%q", value)
Пример вывода простой строки
Давайте выведем строку abcde с использованием глагола %q:
package main
import "fmt"
func main() {
res := fmt.Sprintf("%q", "abcde")
fmt.Println(res)
}
Результат выполнения кода:
"abcde"
Пример вывода строки со специальными символами
Выведем строку, содержащую символ табуляции и новой строки:
package main
import "fmt"
func main() {
res := fmt.Sprintf("%q", "a\tb\nc")
fmt.Println(res)
}
Результат выполнения кода:
"a\tb\nc"
Пример вывода пустой строки
Выведем пустую строку с помощью %q:
package main
import "fmt"
func main() {
res := fmt.Sprintf("%q", "")
fmt.Println(res)
}
Результат выполнения кода:
""
Смотрите также
-
глагол
%s,
который выводит строку без кавычек -
глагол
%v,
который выводит значение в формате по умолчанию -
глагол
%#v,
который выводит представление значения в виде кода Go -
функцию
fmt.Sprintf,
которая форматирует строку без вывода в консоль