golang 截取中文不出现乱码的方法
Go: 截取中文不出现乱码的方法
1
2
3
4
5
6
7
8
9
10 |
package main
import "fmt"
func main() {
s := "我是中文,标点符号,中文字符截取"
s2 := []rune(s)
fmt.Println(len(s), len(s2))
fmt.Println(string(s2[:4]))
}
|
截取文章内容摘要时经常作这样的判断
Go: 截取实例
1
2
3
4
5
6
7 |
contentRune := []rune(article.Content)
if len(contentRune) > 150 {
contentRune := []rune(article.Content)
item.Des = string(contentRune[:150])
} else {
item.Des = article.Content
}
|
本文网址: https://golangnote.com/topic/194.html 转摘请注明来源
Related articles
以前在项目里用到中文分词,对中文分词库做了一些比较。...
比较两个同类型 struct 是否相等,可以用 `reflect.DeepEqual` 和 `cmp.Equal`,也可以使用硬编码比较,下面看看它们的性能如何。...
Bolt 是一个优秀、纯 Go 实现、支持 ACID 事务的嵌入式 Key/Value 数据库。但在使用过程中会有很多空间碎片。一般数据库占用的空间是元数据空间的 1.5~4 倍。Bolt 没有内置的压缩功能,需要手动压缩。...
phantomjs 是个很优秀的软件,虽然现在被chrome headless 抢了风头,但在某些特定场合,使用phantomjs 还是很方便,这里是介绍使用Go 实现动态代理。...
发现一个很简单、轻量的库,用来验证用户输入的字符串是否合法:...
在go 里,多线程对共享数据的操作一般要使用Mutex 或 Channel 来加锁或隔离通信。下面是一个使用Mutex 和 Channel 比较的例子。...
gopsutil 是用go 实现python 写的psutil 的功能,并尝试在多平台上完整psutil 的函数。...
以前使用PhantomJS,但效果并不好,现在使用Golang+selenium 驱动 chrome headless 模式,再用 goquery 解析html 字符,很方便。...
个人使用中发现,按行读取较大文件 10~100MB ,使用 `ReadSlice()` 比 `scanner.Scan()` 性能好一些。...
Socks5 代理较 `http/https` 代理有较好的性能,下面是借鉴某个著名开源软件的 local 实现的简单代理。...