卡码网-54, 替换数字
小于 1 分钟
一、题目描述
给定一个字符串s
,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number
。 例如,对于输入字符串"a1b2c3"
,函数应该将其转换为"anumberbnumbercnumber"
。
示例 1
输入: a1b2c3
输出: anumberbnumbercnumber
提示
1 <= s.length < 10000
相关主题
- string
二、题解
方法 1: 暴力解法
pub fn replace_numbers(s: String) -> String {
let number = "number";
s.chars()
.fold(String::with_capacity(s.len() * 2), |mut res, c| {
if c.is_numeric() {
res += number;
} else {
res.push(c);
}
res
})
}
public String replaceNumbers(String s) {
String number = "number";
StringBuilder sb = new StringBuilder(s.length() * 2);
for (char c : s.toCharArray()) {
if (Character.isDigit(c)) {
sb.append(number);
} else {
sb.append(c);
}
}
return sb.toString();
}