《零基础Go语言算法实战》【题目 1-14】字符串的替换

《零基础Go语言算法实战》

【题目 1-14】字符串的替换

请编写一个函数,将字符串中的空格全部替换为"%20"。假定该字符串有足够的空间存

放新增的字符,并且知道字符串的真实长度(≤ 1000),同时保证字符串由大小写的英文字

母组成。给定一个字符串为原始串,返回替换后的字符串。

【解答】

① 思路。

本题可以使用 Go 语言内置函数 unicode.IsLetter() 来判断字符是否为字母,之后使用

strings.Replace() 函数来替换空格。

② Go 语言实现。

package main

import (

"strings"

16

第1章 Go语言入门

"unicode"

)

func replaceBlank(s string) (string, bool) {

if len([]rune(s)) > 1000 {

return s, false

}

for _, v := range s {

if string(v) != " " && unicode.IsLetter(v) == false {

return s, false

}

}

return strings.Replace(s, " ", "%20", -1), true

}

相关推荐
Jasmine_llq1 小时前
《CF280C Game on Tree》
数据结构·算法·邻接表·深度优先搜索(dfs)·树的遍历 + 线性累加统计
小棠师姐1 小时前
支持向量机(SVM)入门:超平面与核函数的通俗解释
算法·python机器学习·支持向量机svm·超平面可视化·核函数应用
Captaincc2 小时前
如何在一天内重启你的人生
程序员
文心快码BaiduComate2 小时前
0代码手写!体验百度Comate的“魔法”:我造了个会理解情绪的中介层
前端·程序员·前端框架
Captaincc2 小时前
Vibe Coding 进阶:非技术人员的生存手册
程序员·vibecoding
im_AMBER2 小时前
Leetcode 102 反转链表
数据结构·c++·学习·算法·leetcode·链表
今儿敲了吗2 小时前
01|多项式输出
c++·笔记·算法
Xの哲學2 小时前
深入剖析Linux文件系统数据结构实现机制
linux·运维·网络·数据结构·算法
AlenTech3 小时前
200. 岛屿数量 - 力扣(LeetCode)
算法·leetcode·职场和发展
C雨后彩虹3 小时前
竖直四子棋
java·数据结构·算法·华为·面试