Go语言中strings和strconv包示例代码详解
前缀和后缀
HasPrefix判断字符串s是否以prefix开头:
strings.HaxPrefix(sstring,prefixstring)bool
示例:
packagemain
import(
"fmt"
"strings"
)
funcmain(){
pre:="Thi"
str1:="ThisisaGoprogram!"
fmt.Println(strings.HasPrefix(str1,pre))
}
HasSuffix判断字符串s是否以suffix结尾:
strings.HasSuffix(sstring,suffixstring)bool
示例:
packagemain
import(
"fmt"
"strings"
)
funcmain(){
suffix:="am!"
str1:="ThisisaGoprogram!"
fmt.Println(strings.HasSuffix(str1,suffix))
}
字符串包含关系
Contains判断字符串s是否包含substr:
strings.Contains(sstring,substrstring)bool
示例:
packagemain
import(
"fmt"
"strings"
)
funcmain(){
substr:="is"
str1:="ThisisaGoprogram!"
fmt.Println(strings.Contains(str1,substr))
}
判断子字符串或字符在父字符串中出现的位置(索引)
Index返回字符串substr在字符串s中的索引(substr的第一个字符的索引),-1表示字符串s不包含字符串substr:
strings.Index(sstring,sbustrstring)int
示例:
packagemain
import(
"fmt"
"strings"
)
funcmain(){
substr:="is"
substr2:="Hi"
str1:="ThisisaGoprogram!"
fmt.Println(strings.Index(str1,substr))//输出2
fmt.Println(strings.Index(str1,substr2))//输出-1
}
LastIndex返回字符串substr在字符串s中最后出现位置的索引(substr的第一个字符的索引),-1表示
字符串s不包含字符串substr:
strings.LastIndex(sstring,substrstring)int
语法:
packagemain
import(
"fmt"
"strings"
)
funcmain(){
substr:="is"
substr2:="Hi"
str1:="ThisisaGoprogram!"
fmt.Println(strings.LastIndex(str1,substr))//输出5
fmt.Println(strings.LastIndex(str1,substr2))//输出-1
}
如果r是非ASCII编码的字符,建议使用以下函数来对字符进行定位:
strings.IndexRune(sstring,rrune)int
示例
packagemain
import(
"fmt"
"strings"
)
funcmain(){
substr:='中'
substr2:='天'
str1:="我爱你中国"
fmt.Println(strings.IndexRune(str1,substr))//输出9
fmt.Println(strings.IndexRune(str1,substr2))//输出-1
}
packagemain
import(
"fmt"
"strings"
)
funcmain(){
substr:="中"
substr2:="天"
str1:="我爱你