第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Go lang 區(qū)分 "\n" 和換行符

Go lang 區(qū)分 "\n" 和換行符

Go
達令說 2021-11-01 15:47:14
我正在嘗試通過以下代碼讀取由 linux 命令生成的某些字符串輸出:out, err := exec.Command("sh", "-c", cmd).Output()以上是[]byte類型,如何區(qū)分行內(nèi)容中包含的“\n”字符與真正的換行符?我試過strings.Split(output, "\n")和bufio.NewScanner(strings.NewReader(output))但是每當看到“\n”字符時,它們都會拆分整個字符串緩沖區(qū)。好的,澄清一下,“不真實”的中斷是包含在字符串中的“\n”字符,如下所示, Print first result: "123;\n234;\n"Print second result: "456;\n"整個輸出是一個大的多行字符串,它可能還包含一些其他帶引號的字符串,我在我的go程序中處理整個字符串輸出,但我無法控制命令輸出并在“之前添加反斜杠\n" 字符。進一步澄清:我的意思是處理包含字符串的字節(jié)序列,并希望保留\n內(nèi)部字符串中包含的“ ”并使用外層“ \n”來斷行。所以對于以下字節(jié)序列:First line: "test1"Second line: "123;\n234;\n345;"Third line: "456;\n567;"Fourth line: "test4"我想在處理整個序列時得到 3 行,而不是總共得到 7 行。這是一個舊項目,但我記得我可以使用Python直接使用“ for line in f”之類的語法獲取3行,并打印第二個內(nèi)部字符串的內(nèi)容而不是渲染它。
查看完整描述

3 回答

?
海綿寶寶撒

TA貢獻1809條經(jīng)驗 獲得超8個贊

您的“\n”實際上可能是換行符的轉(zhuǎn)義版本。您可以通過搜索轉(zhuǎn)義版本并替換為非轉(zhuǎn)義版本,用真正的換行符替換它們:

strings.Replace(sourceStr, `\n`, "\n", -1)

由于反引號內(nèi)的字符串文字可以寫在多行上,Go 會轉(zhuǎn)義它看到的任何換行符。


查看完整回答
反對 回復 2021-11-01
?
米琪卡哇伊

TA貢獻1998條經(jīng)驗 獲得超6個贊

“真實”和“非真實”換行符之間沒有區(qū)別。

如果您使用的是類 Unix 系統(tǒng),則文本文件中的行尾由 LF 或'\n'字符表示。'\n'一行中間不能有字符。

內(nèi)存中的字符串可以包含任意數(shù)量的'\n'字符。將字符串"foo\nbar\n"寫入文本文件時,將創(chuàng)建兩行,"foo""bar".

之間沒有有效的區(qū)別

fmt.Println("foo")fmt.Println("bar")

fmt.Printf("foo\nbar\n")

兩者都打印相同的 2 行序列,如下所示:

fmt.Println("foo\nbar")


查看完整回答
反對 回復 2021-11-01
  • 3 回答
  • 0 關注
  • 276 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號