Rust: trim(),trim_matches()等江南六怪......

Rust关于trim类的函数有6个,简称江南六怪,功能十分强大,值得我们了解一下。
先看官方文档,再找机会展开。

需要说明的,trim只是“边裁”。或两边,或右边,或左边。

一、官方文档

1、trim

let s = " Hello\tworld\t";
assert_eq!("Hello\tworld", s.trim());

2、trim_left

let s = " Hello\tworld\t";
assert_eq!("Hello\tworld\t", s.trim_left());

3、trim_right

let s = " Hello\tworld\t";
assert_eq!(" Hello\tworld", s.trim_right());

4、trim_matches

assert_eq!("11foo1bar11".trim_matches('1'), "foo1bar");
assert_eq!("123foo1bar123".trim_matches(char::is_numeric), "foo1bar");

let x: &[_] = &['1', '2'];
assert_eq!("12foo1bar12".trim_matches(x), "foo1bar");

5、trim_left_matches

assert_eq!("11foo1bar11".trim_left_matches('1'), "foo1bar11");
assert_eq!("123foo1bar123".trim_left_matches(char::is_numeric), "foo1bar123");

let x: &[_] = &['1', '2'];
assert_eq!("12foo1bar12".trim_left_matches(x), "foo1bar12");

6、trim_right_matches

assert_eq!("11foo1bar11".trim_right_matches('1'), "11foo1bar");
assert_eq!("123foo1bar123".trim_right_matches(char::is_numeric), "123foo1bar");

let x: &[_] = &['1', '2'];
assert_eq!("12foo1bar12".trim_right_matches(x), "12foo1bar");

assert_eq!("1fooX".trim_left_matches(|c| c == '1' || c == 'X'), "fooX");

二、其它(待续)

类似相关的功能可以使用replace(),&str,String()都可以。

    let a_string = "123foo1bar123".to_string();
    let a_str = "123foo1bar123";

    let b_string = a_string.replace("123", "");
    let b_str = a_str.replace("123", "");
    println!("b_string:{:?} b_str:{:?}", b_string, b_str);   
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值