golang удаляет символы (используемые для удобства чтения) в константной строке во время компиляции (пробелы, \ n и \ t) - PullRequest
0 голосов
/ 19 июня 2019

Пробелы полезны для отступа URL-адресов, SQL-запросов, чтобы сделать его более читабельным. Есть ли способ удалить символы из константной строки во время компиляции в golang?

ex: (runtime version)
const url = `https://example.com/path?
attr1=test
&attr2=test
`
// this is the code to be replaced
urlTrim := strings.Replace(
strings.Replace(url, "\n", "", -1)
)

1 Ответ

4 голосов
/ 19 июня 2019

Выражения констант не могут содержать вызовы функций (за исключением нескольких встроенных функций).Так что то, что вы хотите, не может быть сделано с использованием необработанного строкового литерала .

Если ваша цель с использованием нескольких строк - просто для читабельности, просто используйте несколько литералов и объедините их:

const url = "https://example.com/path?" +
    "attr1=test" +
    "&attr2=test"

Попробуйте на игровой площадке Go .

См. Связанный вопрос: Инициализируйте переменную const

...