Trim移除字符串开始末尾的字符串

fn main() {
let s = " Hello Rust! ";
// trim移除字符串开始末尾的空格
// "Hello Rust!"
println!("{}", s.trim()); // trim_start移除字符串开始的空格
// "Hello Rust! "
println!("{}", s.trim_start()); // trim_end移除字符串末尾的空格
// " Hello Rust!"
println!("{}", s.trim_end()); let s = "abcabcabcHello Rust!abcabcabc"; // trim_start_matches移除字符串开始匹配的字符串
// "Hello Rust!abcabcabc"
println!("{}", s.trim_start_matches("abc")); // trim_start_matches移除字符串开始匹配的字符串
// "abcabcabcHello Rust!"
println!("{}", s.trim_end_matches("abc"));
}

swap交换两个字符

fn main() {
// 1. as_mut_vec
let mut s = "中abc".to_string();
unsafe {
// 交换第0个和第1个元素
s.as_mut_vec().swap(0, 1);
}
// 乱码abc
println!("{}", s); // 2. chars
let s = "中abc".to_string();
let mut arr: Vec<char> = s.chars().collect();
// 交换第0个和第1个元素
arr.swap(0, 1);
let s: String = arr.into_iter().collect();
// a中bc
println!("{}", s); // 3. into_bytes
let s = "abc".to_string();
let mut arr = s.into_bytes();
unsafe {
// 交换第0个和第1个元素
std::ptr::swap(&mut arr[0], &mut arr[1]);
}
let s = String::from_utf8(arr).unwrap();
// bac
println!("{}", s); // 4. replace_range
let mut s = "abc".to_string();
// tmp: &alloc::string::String
let tmp = &s[0..1].to_string();
// 交换第0个和第1个元素
// cannot borrow `s` as mutable because it is also borrowed as immutable
// s.replace_range(0..1, &s[1..2]);
s.replace_range(0..1, &s[1..2].to_string());
s.replace_range(1..2, tmp);
// bac
println!("{}", s);
}

最新文章

  1. Web 开发中很实用的10个效果【附源码下载】
  2. WPF DatePicker只显示年和月 修改:可以只显示年
  3. 配置springMVC之后,引入js,css等资源处理
  4. Ubuntu 14.04 LTS 安装 spark 1.6.0 (伪分布式)-26号开始
  5. 数据库 SQL Server 到 MySQL 迁移方法总结
  6. 原生js运动框架
  7. win7 64系统安装oracle客户端使用PL/SQL Developer工具
  8. 使用Sass和Compass组合写CSS
  9. Java Random随机种子
  10. 设计与实现的简单和经常使用的权限系统(五岁以下儿童):不维护节点的深度level,手工计算level,树形结构
  11. 转:【Java并发编程】之八:多线程环境中安全使用集合API(含代码)
  12. Schema与数据类型优化
  13. iframe嵌套vue页面打开新窗口
  14. linux中创建python的虚拟环境
  15. 1.4 flask request和session
  16. nginx配置详细解析
  17. Redhat 6.5安装JDK和Tomcat小记
  18. 【读书笔记】iOS-对iOS应用进行模糊测试
  19. Quartz入门例子简介 从入门到菜鸟(一)
  20. STM32 ADC 采样 频率的确定

热门文章

  1. 基于OpenLayers使用WFS实现GeoServer地图要素的增删改查
  2. ascii编码常用字符的十进制对照表
  3. h5端安装调试工具,react版(但不限于react,vue等)
  4. 使用iperf测试网卡性能
  5. 重置Beyond Compare 4试用时间
  6. php 允许跨域
  7. Excel工具(批量生成txt)
  8. git连接不上,使用git镜像
  9. 快速导出Redis某个List列表所有数据
  10. OS-lab2