Go語言獲取文件的名稱、前綴、后綴
示例代碼:
package main import ( "fmt" "path" ) func main() { filename := "device/sdk/CMakeLists.txt" filenameall := path.Base(filename) filesuffix := path.Ext(filename) fileprefix := filenameall[0:len(filenameall) - len(filesuffix)] //fileprefix, err := strings.TrimSuffix(filenameall, filesuffix) fmt.Println("file name:", filenameall) fmt.Println("file prefix:", fileprefix) fmt.Println("file suffix:", filesuffix) }
執(zhí)行結(jié)果:
file name: CMakeLists.txt
file prefix: CMakeLists
file suffix: .txt
path.Base(filename)
獲取不包含目錄的文件名
path.Ext(filename)
獲取文件后綴
文件前綴 可以使用切片的方式獲?。?/h2>
fileprefix := filenameall[0:len(filenameall) - len(filesuffix)]
也可以使用 strings.TrimSuffix() 進(jìn)行獲取:
import "strings"
fileprefix, err := strings.TrimSuffix(filenameall, filesuffix)
fileprefix := filenameall[0:len(filenameall) - len(filesuffix)]
import "strings" fileprefix, err := strings.TrimSuffix(filenameall, filesuffix)
補(bǔ)充:golang 判斷前綴后綴、包含關(guān)系
HasPrefix 判斷字符串 s 是否以 prefix 開頭:
strings.HasPrefix(s, prefix string) bool
HasSuffix 判斷字符串 s 是否以 suffix 結(jié)尾:
strings.HasSuffix(s, suffix string) bool
字符串包含關(guān)系
Contains 判斷字符串 s 是否包含 substr :
strings.Contains(s, substr string) bool
測(cè)試源碼:
package main import ( "fmt" "strings" ) func main() { var str1 string = "This is an example of a string" var str2 string = "this is an " var str3 string = " of a string" fmt.Println(strings.HasPrefix(str1, str2)) fmt.Println(strings.HasSuffix(str1, str3)) }
運(yùn)行結(jié)果:
[root@localhost golang]# go run zzz.go
false
true
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Go如何實(shí)現(xiàn)HTTP請(qǐng)求限流示例
本篇文章主要介紹了Go如何實(shí)現(xiàn)HTTP請(qǐng)求限流示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04go實(shí)現(xiàn)服務(wù)優(yōu)雅關(guān)閉的示例
本文主要介紹了go實(shí)現(xiàn)服務(wù)優(yōu)雅關(guān)閉的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02Golang中時(shí)間格式化的實(shí)現(xiàn)詳解
這篇文章主要為大家詳細(xì)介紹了Go語言中進(jìn)行時(shí)間進(jìn)行格式化的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2023-09-09Go-家庭收支記賬軟件項(xiàng)目實(shí)現(xiàn)
這篇文章主要介紹了Go-家庭收支記賬軟件項(xiàng)目實(shí)現(xiàn),本文章內(nèi)容詳細(xì),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,需要的朋友可以參考下2023-01-01Golang實(shí)現(xiàn)JWT身份驗(yàn)證的示例詳解
JWT(JSON Web Token)是一種開放標(biāo)準(zhǔn)(RFC 7519),用于在網(wǎng)絡(luò)應(yīng)用間安全地傳輸聲明,本文主要為大家詳細(xì)介紹了Golang實(shí)現(xiàn)JWT身份驗(yàn)證的相關(guān)方法,希望對(duì)大家有所幫助2024-03-03