golang中的單引號(hào)轉(zhuǎn)義問題
golang的單引號(hào)轉(zhuǎn)義
如題,golang中有時(shí)候需要將一個(gè)字符串中的單引號(hào)再轉(zhuǎn)義一次,比如在兩個(gè)單引號(hào)之間包含一個(gè)含有單引號(hào)的字符串的情形。
但是這個(gè)轉(zhuǎn)義卻不像C語言里的那樣,比如這樣寫:info = strings.Replace(info, "\'", "\\\'", -1)
就報(bào)unknown escape sequence錯(cuò)誤。
正確的寫法是:
info = strings.Replace(info, "'", "\\'", -1)
我想這里應(yīng)該是:在兩個(gè)雙引號(hào)之間不需要使用\'來表示單引號(hào)。
go語言中的單引號(hào)、雙引號(hào)和反引號(hào)
1.單引號(hào)
單引號(hào)在go語言中表示golang中的rune(int32)類型,單引號(hào)里面是單個(gè)字符,對(duì)應(yīng)的值為改字符的ASCII值。
func main() { ? ? a := 'A' ? ? fmt.Println(a) }
輸出:
random@random-wz MINGW64 /c/GOPATH/src/Test
$ go run main.go
65
2.雙引號(hào)
在go語言中雙引號(hào)里面可以是單個(gè)字符也可以是字符串,雙引號(hào)里面可以有轉(zhuǎn)義字符,如\n、\r等,對(duì)應(yīng)go語言中的string類型。
func main() { ? ? a := "Hello golang\nI am random_wz." ? ? fmt.Println(a) }
輸出:
random@random-wz MINGW64 /c/GOPATH/src/Test
$ go run main.go
Hello golang
I am random_wz.
3.反引號(hào)
反引號(hào)中的字符表示其原生的意思,在單引號(hào)中的內(nèi)容可以是多行內(nèi)容,不支持轉(zhuǎn)義。
func main() { ? ? a := `Hello golang\n: I am random_wz. Good.` ? ? fmt.Println(a) }
輸出:
random@random-wz MINGW64 /c/GOPATH/src/Test
$ go run main.go
Hello golang\n:
I am random_wz.
Good.
可以看到\n并沒有被轉(zhuǎn)義,而是被直接作為字符串輸出。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Go 并發(fā)實(shí)現(xiàn)協(xié)程同步的多種解決方法
這篇文章主要介紹了Go 并發(fā)——實(shí)現(xiàn)協(xié)程同步的多種解決方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08解決Golang在Web開發(fā)時(shí)前端莫名出現(xiàn)的空白換行
最近在使用Go語言開發(fā)Web時(shí),在前端莫名出現(xiàn)了空白換行,找了網(wǎng)上的一些資料終于找到了解決方法,現(xiàn)在分享給大家,有需要的可以參考。2016-08-08Go?實(shí)戰(zhàn)單隊(duì)列到優(yōu)先級(jí)隊(duì)列實(shí)現(xiàn)圖文示例
這篇文章主要為大家介紹了Go?實(shí)戰(zhàn)單隊(duì)列到優(yōu)先級(jí)隊(duì)列圖文示例實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07Go開發(fā)go-optioner工具實(shí)現(xiàn)輕松生成函數(shù)選項(xiàng)模式代碼
go-optioner?是一個(gè)在?Go?代碼中生成函數(shù)選項(xiàng)模式代碼的工具,可以根據(jù)給定的結(jié)構(gòu)定義自動(dòng)生成相應(yīng)的選項(xiàng)代碼,下面就來聊聊go-optioner是如何使用的吧2023-07-07Go中字符串處理?fmt.Sprintf與string.Builder的區(qū)別對(duì)比分析
在Go語言中,我們通常會(huì)遇到兩種主要的方式來處理和操作字符串:使用fmt.Sprintf函數(shù)和string.Builder類型,本文給大家介紹它們?cè)谛阅芎陀梅ㄉ嫌幸恍╆P(guān)鍵區(qū)別,感興趣的朋友跟隨小編一起看看吧2023-11-11golang使用redis實(shí)現(xiàn)全文搜索功能詳解
這篇文章主要為大家詳細(xì)介紹了golang如何使用redis實(shí)現(xiàn)全文搜索功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2025-02-02