gpt4 book ai didi

go - golang中如何把'改成'?

转载 作者:IT王子 更新时间:2023-10-29 02:08:23 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to replace a single character inside a string in Golang?

(2 个回答)


3年前关闭。




假设在读取该文件时,csv 文件中有 1000 个用户记录,其中有 700 个用户姓氏此标志 我必须将该符号更改为 '使用 golang。是否有任何技术或功能可以解决我的问题?

一件事是,虽然我打印此 例如

package main

import (
"fmt"
)

func main() {
strVal := "O’max"
for i:= 0; i< len(strVal);i++{
fmt.Println(string(strVal[i]))
}
}

输出是:-
O
â


m
a
x

Playground Link

最佳答案

您正在挑战 unicode 问题。问题是您迭代字节,而不是字符。同时,你的unicode字符需要 3 个字节,这就是为什么你有那个输出。为了正确处理它,您使用 rune 进行迭代,它将处理 unicode 字节。

func convert(src string) string {
var sb strings.Builder

for _, el := range src {
if el == '’' {
sb.WriteString("'")
} else {
sb.WriteRune(el)
}
}


return sb.String()
}

然后,在需要转换的地方,您必须调用
strVal = convert(strVal)

您的完整方案在 Playground

Golang Blog 中阅读更多关于 rune 的信息

关于go - golang中如何把'改成'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53313438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com