mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-12 06:19:44 +08:00
Delete 18.1.md
This commit is contained in:
@@ -1,61 +0,0 @@
|
|||||||
# 18.1 字符串
|
|
||||||
|
|
||||||
(1)如何修改字符串中的一个字符:
|
|
||||||
|
|
||||||
```go
|
|
||||||
str:="hello"
|
|
||||||
c:=[]byte(s)
|
|
||||||
c[0]='c'
|
|
||||||
s2:= string(c) // s2 == "cello"
|
|
||||||
```
|
|
||||||
|
|
||||||
(2)如何获取字符串的子串:
|
|
||||||
|
|
||||||
```go
|
|
||||||
substr := str[n:m]
|
|
||||||
```
|
|
||||||
|
|
||||||
(3)如何使用for或者for-range遍历一个字符串:
|
|
||||||
|
|
||||||
```go
|
|
||||||
// gives only the bytes:
|
|
||||||
for i:=0; i < len(str); i++ {
|
|
||||||
… = str[i]
|
|
||||||
}
|
|
||||||
// gives the Unicode characters:
|
|
||||||
for ix, ch := range str {
|
|
||||||
…
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
(4)如何获取一个字符串的字节数:`len(str)`
|
|
||||||
|
|
||||||
如何获取一个字符串的字符数:
|
|
||||||
|
|
||||||
最快速:`utf8.RuneCountInString(str)`
|
|
||||||
|
|
||||||
`len([]int(str)) //TBD`
|
|
||||||
|
|
||||||
(5)如何连接字符串:
|
|
||||||
|
|
||||||
最快速: `with a bytes.Buffer`(参考[章节7.2](07.2.md))
|
|
||||||
|
|
||||||
`Strings.Join()`(参考[章节4.7](04.7.md))
|
|
||||||
|
|
||||||
`+=`
|
|
||||||
|
|
||||||
```go
|
|
||||||
str1 := "Hello "
|
|
||||||
str2 := "World!"
|
|
||||||
str1 += str2 //str1 == "Hello World!"
|
|
||||||
```
|
|
||||||
|
|
||||||
(6)如何解析命令行参数:使用`os`或者`flag`包
|
|
||||||
|
|
||||||
(参考[例12.4](examples/chapter_12/fileinput.go))
|
|
||||||
|
|
||||||
## 链接
|
|
||||||
|
|
||||||
- [目录](directory.md)
|
|
||||||
- 上一节:[出于性能考虑的实用代码片段](18.0.md)
|
|
||||||
- 下一节:[数组和切片](18.2.md)
|
|
Reference in New Issue
Block a user