package main

import (
	"fmt"
	"strings"
)

func main() {
	str1 := "sorry I don't know!"
	str2 := "__This's a demo file.__"
	str3 := "  This's a demo file.  "

	namestr := "赵欣然,周宇轩,范晓彤"

	// 判断字符串内是否包含指定子串
	str1_1 := strings.Contains(str1, "know")
	fmt.Printf("Contains:\t%#v\n", str1_1)

	// 查找指定字符在字符串中的位置,不存在则返回-1
	index := strings.Index(str1, "I")
	fmt.Println("Index:\t", index)

	fmt.Println("ToTitle:\t", strings.ToTitle(str1))

	// 去掉字符串前缀
	fmt.Println("TrimPrefix:\t", strings.TrimPrefix(str2, "__"))
	fmt.Println("TrimLeft:\t", strings.TrimLeft(str2, "_")) // 前导前缀字符中的所有_都会删除

	// 去掉字符串后缀
	fmt.Println("TrimSuffix:\t", strings.TrimSuffix(str2, "_"))
	fmt.Println("TrimRight:\t", strings.TrimRight(str2, "_")) // 删除后缀中所有_

	// 判断字符串是否以指定子串为前缀
	fmt.Println("HasPrefix:\t", strings.HasPrefix(str2, "_"))

	// 判断字符串是否以指定子串为后缀
	fmt.Println("HasSuffix:\t", strings.HasSuffix(str2, "_"))

	// 去掉字符串两端空白符
	fmt.Println("TrimSpace:\t", strings.TrimSpace(str3))

	// 字符串转切片
	nameSlice := strings.Split(namestr, ",")
	fmt.Println(nameSlice)

	// 切片转字符串
	fmt.Println(strings.Join(nameSlice, ";"))
}