fusen_common/
string.rs

1pub fn mask_str(str: &str) -> String {
2    let len = str.chars().by_ref().count();
3    let split = len / 2;
4    let split2 = split / 2;
5    let mut res = String::new();
6    let mut chars = str.chars();
7    res.extend(chars.by_ref().take(split2));
8    res.push_str(&"*".repeat(split));
9    let _ = chars.by_ref().take(split).count();
10    res.extend(chars);
11    res
12}
13
14pub fn limit_str(str: &str, limit: usize) -> String {
15    let len = str.chars().by_ref().count();
16    if len > limit {
17        let mut chars = str.chars();
18        let mut string = chars.by_ref().take(limit).collect::<String>();
19        string.push_str("..");
20        string
21    } else {
22        str.to_owned()
23    }
24}