濮阳杆衣贸易有限公司

主頁 > 知識庫 > golang strings包的Replace的使用說明

golang strings包的Replace的使用說明

熱門標(biāo)簽:不封卡外呼系統(tǒng) 上海極信防封電銷卡價(jià)格 宿遷便宜外呼系統(tǒng)代理商 仙桃400電話辦理 鄭州智能語音電銷機(jī)器人價(jià)格 湛江crm外呼系統(tǒng)排名 重慶慶云企業(yè)400電話到哪申請 地圖標(biāo)注免費(fèi)定制店 寧波語音外呼系統(tǒng)公司


函數(shù)聲明:

func Trim(s string, cutset string) string

官方描述:

返回將 s 前后端所有 cutset 包含的 utf-8 碼值都去掉的字符串。

示例代碼:

package main
import (
 "fmt"
 "strings"
 _ "test/subpac"
)
func main(){
 fmt.Println("[ !!! Achtung! Achtung! !!! ]:[]:[", strings.Trim(" !!! Achtung! Achtung! !!! ", "") ,"\b]")
 fmt.Println("[ !!! Achtung! Achtung! !!! ]:[ ]:[", strings.Trim(" !!! Achtung! Achtung! !!! ", " ") ,"\b]")
 fmt.Println("[ !!! Achtung! Achtung! !!! ]:[!]:[", strings.Trim(" !!! Achtung! Achtung! !!! ", "!") , "\b]")
 fmt.Println("[ !!! Achtung! Achtung! !!! ]:[! ]:[", strings.Trim(" !!! Achtung! Achtung! !!! ", "! "), "\b]" )
}

輸出結(jié)果:

[ !!! Achtung! Achtung! !!! ]:[]:[ !!! Achtung! Achtung! !!! ]
[ !!! Achtung! Achtung! !!! ]:[ ]:[ !!! Achtung! Achtung! !!!]
[ !!! Achtung! Achtung! !!! ]:[!]:[ !!! Achtung! Achtung! !!! ]
[ !!! Achtung! Achtung! !!! ]:[! ]:[ Achtung! Achtung]

第一行 cutset 為空(不是空格):因此輸出原字符串。

第二行 cutset 為 ” “(空格):因此串首尾的兩個(gè)空格字符被刪除了。

第三行 cutset 為 “!” :收尾未匹配到該 cutset,因此輸出原字符串。

第四行 cutset 為 “! “:首先匹配到空格,串首尾空格字符被刪除,然后匹配到 “!”,繼續(xù)刪除首尾的各三個(gè) “!”,于是得到該結(jié)果串。

注:輸出結(jié)果多余的空格是因?yàn)?Println 在輸出多個(gè)串時(shí)會在串之間添加空格。如下:

fmt.Println("123", "456", "789")

輸出:

123 456 789

補(bǔ)充:golang_strings:trim分割“/“出現(xiàn)的坑及解決辦法

問題描述

strings.Trim和strings.TrimLeft在分割帶有“https://”的字符串時(shí),會多分割一些字符,對分割結(jié)果造成影響。

推測原因:

TrimLeft 只針對utf-8字符進(jìn)行處理,相關(guān)處理可能出現(xiàn)問題。// todo源碼沒看太懂,哪位大佬明白的可以幫忙解釋下

解決辦法

測試代碼如下:

package main
import (
 "fmt"
 "strings"
)
// TrimLeft和Trim分割字符串時(shí),對于有"/"的字符串切割會出現(xiàn)問題
// 切割前綴使用TrimPrefix,切割后綴使用TrimSuffix進(jìn)行代替
func main() {
 Url := "https://www.baidu.com/material/list"
 fmt.Println(strings.TrimLeft(Url, "https://www.baidu.com")) // erial/list
 fmt.Println(strings.TrimPrefix(Url, "https://www.baidu.com")) // /material/list
 Url2 := ":www.baidu.com/material/list"
 fmt.Println(strings.Trim(Url, "https://www.baidu.com")) // erial/l
 fmt.Println(strings.Trim(Url2, ":www.baidu.com"))  // /material/list
 s := "Goodbye,, world!"
 fmt.Println(strings.TrimSuffix(s, ", world!")) // Goodbye,
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 詳解PHP用mb_string處理windows中文字符
  • 淺談Java中String的常用方法
  • JavaScript JSON.stringify()的使用總結(jié)
  • Java實(shí)用工具之StringJoiner詳解
  • golang 的string與[]byte轉(zhuǎn)換方式
  • Java基礎(chǔ)之StringBuffer詳解
  • 詳解java中String值為空字符串與null的判斷方法
  • Java利用StringBuffer替換特殊字符的方法實(shí)現(xiàn)
  • 詳解如何解決使用JSON.stringify時(shí)遇到的循環(huán)引用問題
  • Java中InputSteam怎么轉(zhuǎn)String

標(biāo)簽:遼寧 儋州 西雙版納 安康 青海 海南 電子產(chǎn)品 物業(yè)服務(wù)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《golang strings包的Replace的使用說明》,本文關(guān)鍵詞  golang,strings,包的,Replace,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《golang strings包的Replace的使用說明》相關(guān)的同類信息!
  • 本頁收集關(guān)于golang strings包的Replace的使用說明的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    和硕县| 成武县| 黔西| 商城县| 贞丰县| 平凉市| 新乡县| 陆川县| 巨野县| 黑河市| 城步| 黄梅县| 临江市| 绥江县| 仪征市| 轮台县| 莱州市| 玛纳斯县| 威海市| 梁河县| 刚察县| 珲春市| 凤台县| 左贡县| 合川市| 伊吾县| 米林县| 嵩明县| 白河县| 湟源县| 信宜市| 攀枝花市| 嘉义市| 比如县| 瑞昌市| 乌鲁木齐县| 郑州市| 湾仔区| 曲麻莱县| 丰县| 柳江县|