Шаг 29.
Язык программирования Go.
Функции пакета strconv

    На этом шаге рассмотрим функции пакета strconv для работы со строками в Go.

    Пакет strconv содержит множество функций для преобразования строк в значения других типов и значений других типов в строки.

    Функции, имеющиеся в пакете, перечислены в таблице 1, в которой параметр bs – значение типа []byte, base – число, определяющее основание системы счисления (от 2 до 36), bits – требуемый размер результата в битах (8, 16, 32, 64 или 0 – для результата типа int; 32 или 64 – для результата типа float64), и s – строка.

Таблица 1. Функции из пакета strconv
Функция Описание/результат
strconv.AppendBool(bs, b) В конец bs добавляется строка "true" или "false" в зависимости от значения b
strconv.AppendFloat(bs, f, fmt, prec, bits) В конец bs добавляется строка с представлением вещественного числа f; назначение других параметров см. в описании функции strconv.FormatFloat()
strconv.AppendInt(bs, i, base) В конец bs добавляется строка с представлением целого числа i типа int64 в системе счисления по основанию base
strconv.AppendQuote(bs, s) В конец bs добавляется строка s, обработанная функцией strconv.Quote()
strconv.AppendQuoteRune(bs, char) В конец bs добавляется строка, полученная в результате обработки символа char функцией strconv.QuoteRune()
strconv.AppendQuoteRuneToASCII(bs, char) В конец bs добавляется строка, полученная в результате обработки символа char функцией strconv.QuoteRuneToASCII()
strconv.AppendQuoteToASCII(bs, s) В конец bs добавляется строка, полученная в результате обработки строки s функцией strconv.QuoteToASCII()
strconv.AppendUInt(bs, u, base) В конец bs добавляется строка с представлением целого числа u типа uint64 в системе счисления по основанию base
strconv.Atoi(s) Строка s, преобразованная в значение типа int, и значение ошибки или nil
strconv.CanBackquote(s) true, если строка s может быть представлена в виде строки в обратных апострофах
strconv.FormatBool(tf) Строка "true" или "false" в зависимости от значения tf типа bool
strconv.FormatFloat(f, fmt, prec, bits) Значение f типа float64 в виде строки. Параметр fmt – значение типа byte, представляющий спецификатор формата, 'b' – для %b, 'e' – для %e, и т. д. Параметр prec определяет количество цифр после десятичной точки, когда в параметре формата fmt указывается 'e', 'E' или 'f'; или общее число цифр для формата 'g' или 'G'; чтобы обеспечить вывод минимально возможного количества цифр без потери точности (как это делает функция strconv.ParseFloat()), в параметре prec можно передать значение –1. Параметр bits влияет на точность округления, и в нем обычно передается значение 64
strconv.FormatInt(i, base) Строка с представлением целого числа i типа int64 в системе счисления по основанию base
strconv.FormatUInt(u, base) Строка с представлением целого числа u типа uint64 в системе счисления по основанию base
strconv.IsPrint(c) true, если параметр c типа rune является печатаемым символом
strconv.Itoa(i) Строка с представлением целого числа i в десятичной системе счисления
strconv.ParseBool(s) true и nil, если s является строкой "1", "t", "T", "true", "True" или "TRUE"; false и nil, если s является строкой "0", "f", "F", "false", "False" или "FALSE"; false и значение ошибки в противном случае
strconv.ParseFloat(s, bits) Значение типа float64 и nil, если строка s содержит допустимое представление вещественного числа, или 0 и значение ошибки; параметр bits должен иметь значение 64, однако допускается передавать в нем значение 32, если требуется получить значение типа float32
strconv.ParseInt(s, base, bits) Значение типа int64 и nil, если строка s содержит допустимое представление целого числа, или 0 и значение ошибки; значение 0 в параметре base означает, что система счисления будет определена автоматически по содержимому строки s (наличие в начале строки последовательности символов "0x" или "0X" означает систему счисления по основанию 16, если строка начинается с символа "0", это означает систему счисления по основанию 8; в остальных случаях используется десятичная система счисления), иначе будет использоваться указанная система счисления (по основанию от 2 до 36); параметр bits должен содержать значение 0, если в результате преобразования должно быть получено значение типа int, или количество бит, соответствующее требуемому целочисленному типу со знаком (например, 16 – для типа int16)
strconv.ParseUint(s, base, bits) Значение типа uint64 и nil, или 0 и значение ошибки, аналогично функции strconv.ParseInt(), только в результате возвращается беззнаковое целое
strconv.Quote(s) Значение типа string, содержащее представление строки s в кавычках с учетом синтаксиса языка Go
strconv.QuoteRune(char) Значение типа string, содержащее представление в апострофах кодового пункта параметра char типа rune, с учетом синтаксиса языка Go
strconv.QuoteRuneToASCII(char) Значение типа string, содержащее представление в апострофах кодового пункта параметра char типа rune, с учетом синтаксиса языка Go; не ASCII-символы представляются в виде экранированных последовательностей
strconv.QuoteToASCII(s) Значение типа string, в кавычках с учетом синтаксиса языка Go; для представления не ASCII-символов используются экранированные последовательности
strconv.Unquote(s) Значение типа string, содержащее представление строки s, заключенной в апострофы, кавычки или обратные апострофы, и значение ошибки
strconv.UnquoteChar(s,b) Значение типа rune (первый символ), значение типа bool (если для представления первого символа в кодировке UTF-8 требуется более одного байта), значение типа string (остальная часть строки) и значение ошибки; если в параметре b передается символ апострофа или кавычки, соответствующие символы в строке результата будут экранированы

    На следующем шаге рассмотрим примеры использования функций пакета strconv.


Предыдущий шаг Содержание Следующий шаг