123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142 | package mainimport ( "fmt" "strings" "unicode")/*1、func Contains(s, substr string) bool判断字符串s是否包含substr字符串2、func ContainsAny(s, chars string) bool判断字符串s是否包含chars字符串中的任一字符3、func ContainsRune(s string, r rune) bool判断字符串s是否包含unicode码值r4、func Count(s, sep string) int返回字符串s包含字符串sep的个数5、func HasPrefix(s, prefix string) bool判断字符串s是否有前缀字符串prefix6、func HasSuffix(s, suffix string) bool判断字符串s是否有后缀字符串suffix7、func Index(s, sep string) int返回字符串s中字符串sep首次出现的位置8、func IndexAny(s, chars string) int返回字符串chars中的任一unicode码值r在s中首次出现的位置9、func IndexByte(s string, c byte) int返回字符串s中字符c首次出现位置10、func IndexFunc(s string, f func(rune) bool) int返回字符串s中满足函数f(r)==true字符首次出现的位置11、func IndexRune(s string, r rune) int返回unicode码值r在字符串中首次出现的位置12、func LastIndex(s, sep string) int返回字符串s中字符串sep最后一次出现的位置13、func LastIndexAny(s, chars string) int返回字符串s中任意一个unicode码值r最后一次出现的位置14、func LastIndexByte(s string, c byte) int返回字符串s中字符c最后一次出现的位置15、func LastIndexFunc(s string, f func(rune) bool) int返回字符串s中满足函数f(r)==true字符最后一次出现的位置 */func main() { TestLastIndexFunc()}func TestContains() { fmt.Println(strings.Contains("seafood", "foo"))//true fmt.Println(strings.Contains("seafood", "bar"))//false fmt.Println(strings.Contains("seafood", ""))//true fmt.Println(strings.Contains("", ""))//true fmt.Println(strings.Contains("jonson郑2008", "郑"))//true}func TestContainsAny() { fmt.Println(strings.ContainsAny("team", "i"))//false fmt.Println(strings.ContainsAny("failure", "u & i"))//true fmt.Println(strings.ContainsAny("foo", ""))//false fmt.Println(strings.ContainsAny("", ""))//false}func TestContainsRune() { fmt.Println(strings.ContainsRune("一丁丂", '丁'))//true fmt.Println(strings.ContainsRune("一丁丂", 19969))//true}func TestCount() { fmt.Println(strings.Count("cheese", "e"))//3 fmt.Println(strings.Count("one", ""))//4}func TestHasPrefix() { fmt.Println(strings.HasPrefix("1000phone news", "1000"))//true fmt.Println(strings.HasPrefix("1000phone news", "1000a"))//false}func TestHasSuffix() { fmt.Println(strings.HasSuffix("1000phone news", "news"))//true fmt.Println(strings.HasSuffix("1000phone news", "new"))//false}func TestIndex() { fmt.Println(strings.Index("chicken", "ken"))//4 fmt.Println(strings.Index("chicken", "dmr"))//-1}func TestIndexAny() { fmt.Println(strings.IndexAny("abcABC120", "教育基地A"))//3}func TestIndexByte() { fmt.Println(strings.IndexByte("123abc", 'a'))//3}func TestIndexRune() { fmt.Println(strings.IndexRune("abcABC120", 'C'))//5 fmt.Println(strings.IndexRune("It培训教育", '教'))//8}func TestIndexFunc() { f := func(c rune) bool { return unicode.Is(unicode.Han , c) } fmt.Println(strings.IndexFunc("Hello123,中国" , f))//9}func TestLastIndex() { fmt.Println(strings.LastIndex("jonson learn english", "e"))//13 fmt.Println(strings.Index("go gopher", "go"))//0 fmt.Println(strings.LastIndex("go gopher", "go"))//3 fmt.Println(strings.LastIndex("go gopher", "rodent"))//-1}func TestLastIndexAny() { fmt.Println(strings.LastIndexAny("chicken", "aeiouy"))//5 fmt.Println(strings.LastIndexAny("crwth", "aeiouy"))//-1}func TestLastIndexByte() { fmt.Println(strings.LastIndexByte("abcABCA123", 'A'))//6}func TestLastIndexFunc() { f := func(c rune) bool { return unicode.Is(unicode.Han, c) } fmt.Println(strings.LastIndexFunc("Hello,世界", f))//9 fmt.Println(strings.LastIndexFunc("Hello,world中国人", f))//17} |
本文链接: https://dreamerjonson.com/2018/11/30/golang-22-string-package/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY 4.0 CN协议 许可协议。转载请注明出处!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。