微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Go 中提取子字符串

如何解决在 Go 中提取子字符串

看起来您对切片的工作和字符串存储格式感到困惑,这与您在 C 中所拥有的不同。

  • Go 中的任何切片都存储长度(以字节为单位),因此您不必关心len操作的成本:无需计数
  • Go 字符串不是空终止的,因此您不必删除空字节,也不必1通过添加空字符串在切片后添加

删除最后一个字符(如果它是一个字节字符),只需执行

inputFmt:=input[:len(input)-1]

解决方法

我正在尝试从控制台读取整行(包括空格),然后对其进行处理。使用 bufio.ReadString,换行符与输入一起读取,所以我想出了以下代码来修剪换行符:

input,_:=src.ReadString('\n')
inputFmt:=input[0:len(input)-2]+"" //Need to manually add end of string

有没有更惯用的方法来做到这一点?也就是说,是否已经有一个库可以在为您提取子字符串时处理结尾的空字节?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。