当前位置: 首页 > news >正文

PHP转Go系列 | 字符串的使用姿势

大家好,我是码农先森。

输出

在 PHP 语言中的输出比较简单,直接使用 echo 就可以。此外,在 PHP 中还有一个格式化输出函数 sprintf 可以用占位符替换字符串。

<?phpecho '码农先森';
echo sprintf('码农:%s', '先森');

在 Go 语言中调用它的输出函数之前还需要先引入 fmt 包,这个包提供了非常全面的输入输出函数。如果只输出普通字符串,那么使用 Print 函数即可。此外,在 Go 中也有一个同名同功能的字符串格式化函数 Sprintf。

package mainimport "fmt"func main() {fmt.Print("码农先森")fmt.Print(fmt.Sprintf("码农:%s", "先森"))
}

长度

在 PHP 语言中使用函数 strlen 计算字符串的长度。

<?phpecho strlen('码农先森');

在 Go 语言中使用函数 len 来计算字符串长度,这里因为要统计汉字的数量,因此引入了 unicode/utf8 包。

package mainimport ("fmt""unicode/utf8"
)func main() {fmt.Print(len("码农先森"))fmt.Print(utf8.RuneCountInString("码农先森"))
}

截取

PHP有一个substr函数用来截取任意一段字符串。

<?php
echo substr('Hello World', 0, 3);

Go中的写法有些特别,它是将字符串当做数组,截取其中的某段字符,比较麻烦的是,在PHP中可以将第二个参数设置为负数进行反向取值,但是Go无法做到。

package mainimport ("fmt"
)func main() {str := "Hello World"fmt.Print(str[0:3])
}

搜索

在 PHP 语言中使用 strpos 查询某个字符串出现的位置。

<?phpecho strpos('Hello World', 'l');

在 Go 语言中先引入 strings 包,再调用 Index 函数来实现。

package mainimport ("fmt""strings"
)func main() {fmt.Print(strings.Index("Hello World", "l"))
}

替换

在 PHP 语言中替换字符串使用 str_replace 内置函数。

<?phpecho str_replace('World', 'China', 'Hello,World');

在 Go 语言中使用 strings 包中的函数 Replace,不同的是第四个参数是必填的,它代表替换的次数,为 0 则代表不替换。

package mainimport ("fmt"
)func main() {fmt.Print(strings.Replace("Hello World", "World", "China", 1))
}

连接

在 PHP 语言中最经典的就是用点来连接字符串。此外,也可以使用 implode 函数连接。

<?phpecho 'Hello' . ',' . 'World'; 
echo implode(["Hello", "World"], ",")

在 Go 语言中用加号来连接字符串。此外,还可以使用 strings 包中的 Join 函数连接。

package mainimport ("fmt"
)func main() {fmt.Print("Hello" + "," + "World") str := []string{"Hello", "World"}fmt.Print(strings.Join(str, ","))
}

分割

在 PHP 语言中可以使用 explode 函数分割字符串。

<?phpecho explode("Hello,World", ",")

在 Go 语言中可以使用 strings 包中的 Split 函数连接。

package mainimport ("fmt"
)func main() {fmt.Print(strings.Split("Hello,World", ","))
}

总结

以上是 PHP 语言与 Go 语言在常用的字符串处理场景中的用法,字符串处理在实际的编程中使用的最为频繁,因此我们需要很好的掌握它。

推荐

PHP 语言中的函数是如此强大、丰富、便利,PHP 程序员转到 Go 语言来,发现很多方法都需要自己封装,很不适应。因此给大家推荐一个很好网站,可以直接通过 PHP 语言中的函数找到对应在 Go 语言中的函数,这简直是转 Go 语言 PHP 程序员的福音,网站地址:https://www.php2golang.com/


欢迎关注、分享、点赞、收藏、在看,我是码农先森。

http://www.lryc.cn/news/377085.html

相关文章:

  • vue关于:deep穿透样式的理解
  • 算法 |数字计数
  • 通义千问调用笔记
  • Linux常见的压缩文件种类与对应的压缩解压方法
  • LNMP网站架构
  • 排序算法及源代码
  • 力扣第206题“反转链表”
  • 多模态大模型解读
  • React是什么?
  • 创新入门 | 病毒循环Viral Loop是什么?为何能实现指数增长
  • 鸿蒙HarmonyOS实战:渲染控制、路由案例
  • 【Linux】进程控制2——进程等待(waitwaitpid)
  • SpringBoot 统计接口调用耗时的多种方式
  • Linux系统安装Ruby语言
  • 网络安全练气篇——OWASP TOP 10
  • python实现进度条的方法和实现代码
  • 被拷打已老实!面试官问我 #{} 和 ${} 的区别是什么?
  • C# —— while循环语句
  • 力扣第205题“同构字符串”
  • 探索RESTful API开发,构建可扩展的Web服务
  • 苹果安卓网页的H5封装成App的应用和原生开发的应用有什么不一样?
  • IO流2.
  • 详解MySQL中的PERCENT_RANK函数
  • 宏任务与微任务
  • 昇思大模型学习·第一天
  • python调用chatgpt
  • YOLOV8 目标检测:训练自定义数据集
  • 动态更新自建的Redis连接池连接数量
  • 浅谈设计师的设计地位
  • C/C++ string模拟实现