`

Go语言中的反引号

 
阅读更多

 

看到grafana的源码,有个反引号,就查下具体的含义:

type jwtToken struct {
	ExpiresOn       time.Time `json:"-"`
	ExpiresOnString string    `json:"expires_on"`
	AccessToken     string    `json:"access_token"`
}

 

 

结论写在最前:在Go语言中不倾向于使用单引号来表示字符串,请根据需要使用双引号或反引号。


一个Go语言字符串是一个任意字节的常量序列。Go语言的字符串类型在本质上就与其他语言的字符串类型不同。Java的String、C++的std::string以及python3的str类型都只是定宽字符序列,而 Go语言的字符串是一个用UTF-8编码的变宽字符序列,它的每一个字符都用一个或多个字节表示 

Go语言中的字符串字面量使用 双引号 或 反引号 来创建 

  • 双引号用来创建 可解析的字符串字面量 (支持转义,但不能用来引用多行);
  • 反引号用来创建 原生的字符串字面量 ,这些字符串可能由多行组成(不支持任何转义序列),原生的字符串字面量多用于书写多行消息、HTML以及正则表达式

There are two forms: raw string literals and interpreted string literals.

  • Raw string literals are character sequences between back quotes, as in foo .
  • Interpreted string literals are character sequences between double quotes, as in “bar”.

A rune literal represents a rune constant, an integer value identifying a Unicode code point. A rune literal is expressed as one or more characters enclosed in single quotes, as in ‘x’ or ‘\n’. Within the quotes, any character may appear except newline and unescaped single quote. A single quoted character represents the Unicode value of the character itself, while multi-character sequences beginning with a backslash encode values in various formats.

 

参考:

 

https://studygolang.com/articles/7312

分享到:
评论

相关推荐

    Go 语言参考手册.pdf

    Go语言,也称为Golang,是一种开源的编程语言,由Google设计,旨在提升系统编程的效率。它的设计初衷是为了简化编程,特别是面对大型软件系统时能够提供高效的编译速度、高效的运行时性能、以及简洁的代码结构。Go...

    Go语言 知识点

    此外,Go语言还支持原始字符串字面量,通过反引号`…`包裹起来,可以包含任意字符而不需转义。 ##### 5. UTF-8编码 Go语言中的字符串默认使用UTF-8编码,当处理非英语字符时,这尤为重要。UTF-8编码使用1到4个字节...

    Go 语言 简明教程.docx

    在Go语言中,可以使用var关键字声明变量,例如: ``` var num int = 1 ``` 也可以使用平行赋值,例如: ``` var num1, num2 int = 1, 2 ``` 还可以使用多行赋值,例如: ``` var ( num1 int = 1 num2 int = 2 ) ``...

    Go 学习笔记

    字符串在Go中是不可变的序列,可以使用双引号或反引号定义。 **运算符** Go语言提供了多种运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符等。 **指针** 指针存储了变量的内存地址,可以通过取地址符`&...

    Go语言声明一个多行字符串的变量

    Go语言对多行字符串变量提供了非常便利的声明方式,通过反引号`` ` ``可以直接创建一个多行的字符串,这种方式创建的字符串会保留内部的换行和空格,非常适合于声明程序中的文档字符串、错误信息或其他需要多行文本...

    在Go语言中使用JSON的方法

    在Go语言中,JSON是作为一种通用的编码格式广泛应用于数据的序列化和反序列化过程中。Go语言的标准库内置了对JSON的支持,通过`encoding/json`包可以方便地实现Go中的对象与JSON数据之间的转换。 ### JSON的编码...

    Go语言使用字符串的几个技巧分享

    Go语言提供了一种简便的方法来创建包含多行内容的字符串——使用反引号 (``) 包围字符串内容。这种方式非常适合用于创建带有换行符的字符串,而无需手动插入转义字符。下面是一个示例: ```go package main import ...

    go学习笔记,学习go的最好资料

    根据给定的文件信息,以下是对Go语言学习资料中的关键知识点进行详细解析: ### 第一部分:语言 #### 第1章 类型 ##### 1.1 变量 Go是一种静态类型的编程语言,这意味着变量一旦被定义后其类型就不能再改变。在...

    go注意点.mdgo学习高级文件(个人整理)

    - **反引号`` ` ``**:用于表示原始字符串,即字符串中的内容会被按照原样处理,不会进行转义。 ```go s := `hello world` // 原始字符串,允许换行 ``` #### 切片操作 Go语言中的切片是一种动态数组,具有...

    golang 学习笔记

    - **字符串字面量**:可以使用双引号 `""` 或反引号 `"""..."""` 来定义字符串。 - **字符串拼接**:使用 `+` 运算符或者 `fmt.Sprintf` 函数来拼接字符串。 - **字符串不可变性**:Go 中的字符串是不可变的,即不能...

    python中的单引号双引号区别知识点总结

    在Python编程语言中,单引号 `'` 和双引号 `"` 主要用于定义字符串,它们之间在大多数情况下是等价的,可以互换使用。然而,它们在处理特定情况时有所不同,尤其是在涉及到字符串内嵌套和转义字符时。下面是关于...

    go代码-main.go

    在本案例中,我们关注的是一个名为"main.go"的Go语言源代码文件,它通常在Go编程环境中作为程序的入口点。Go语言是Google开发的一种静态类型、编译型、并发型、垃圾回收的现代编程语言,设计时强调了简洁、效率和可...

    分享6个Go处理字符串的技巧小结

    在Go语言中,处理字符串是日常编程中常见的任务。这里我们总结了六个实用的Go处理字符串的技巧,帮助你提高代码效率和可读性。 1. **多行字符串**: 在Go中,你可以使用反引号(`)来创建多行字符串。这种字符串保留...

    MIT6.824 资料-课时09

    在本节课程中,我们将深入探讨Go语言中并发编程的模式和提示。首先,我们需要区分并发(Concurrency)和并行(Parallelism)的概念。并发指的是独立执行过程的组合,而并行则涉及同时执行(可能相关的)计算。...

    go代码-截取指定字符转换

    在Go语言中,截取指定字符转换涉及到字符串处理和字符编码转换的概念。Go语言提供了强大的字符串操作函数,使得我们可以方便地进行字符串截取和字符转换。以下是对标题和描述中涉及知识点的详细解释: 1. **字符串...

    标记的

    6. 代码块:使用三个反引号 (`) 将代码包围,可以指定代码语言。 7. 代码高亮:在代码块内指定语言,如 ```go 代码 ``` "标记的"可能还支持一些高级特性,例如表格、自定义HTML、LaTeX数学公式、任务列表等。这些...

    Go JSON编码与解码的实现

    在Go语言中,JSON编码与解码是通过`encoding/json`包来实现的。这个包提供了将Go数据结构转换为JSON格式以及将JSON数据解析回Go数据结构的功能。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,...

    GCC-ASM.rar_asm gcc 内嵌

    3. **指令序列**:在双引号内的文本是汇编指令,用反斜杠和换行符`\n\t`来模拟汇编代码的缩进和换行。 GCC内嵌汇编的优点在于能够精确控制硬件资源,提高程序性能,特别是在处理底层硬件交互、优化计算密集型代码或...

Global site tag (gtag.js) - Google Analytics