从 String Rust 中删除表情符号
Remove Emojis from String Rust
如何从 "⚡hel✅lo"
这样的字符串中删除表情符号?
我知道您需要使用 Regex
和其他一些东西,但我不确定如何编写语法并替换 string
.[=13 中的所有内容=]
谢谢,非常感谢帮助。
所以我花了一些时间来弄清楚,但这是解决方案
/// Removes all emojis from a string **(retains chinese characters)**
///
/// # Arguments
///
/// * `string` - String with emojis
///
/// # Returns
///
/// * `String` - De-emojified string
///
/// # Examples
///
/// ```
///
/// // Remove all emojis from this string
/// let demojified_string = demoji(String::from("⚡hel✅lo"))
/// // Output: `hello`
/// ```
pub fn demoji(string: String) -> String {
let regex = Regex::new(concat!(
"[",
"\u{01F600}-\u{01F64F}", // emoticons
"\u{01F300}-\u{01F5FF}", // symbols & pictographs
"\u{01F680}-\u{01F6FF}", // transport & map symbols
"\u{01F1E0}-\u{01F1FF}", // flags (iOS)
"\u{002702}-\u{0027B0}",
"\u{0024C2}-\u{01F251}",
"]+",
))
.unwrap();
regex.replace_all(&string, "").to_string()
}
如何从 "⚡hel✅lo"
这样的字符串中删除表情符号?
我知道您需要使用 Regex
和其他一些东西,但我不确定如何编写语法并替换 string
.[=13 中的所有内容=]
谢谢,非常感谢帮助。
所以我花了一些时间来弄清楚,但这是解决方案
/// Removes all emojis from a string **(retains chinese characters)**
///
/// # Arguments
///
/// * `string` - String with emojis
///
/// # Returns
///
/// * `String` - De-emojified string
///
/// # Examples
///
/// ```
///
/// // Remove all emojis from this string
/// let demojified_string = demoji(String::from("⚡hel✅lo"))
/// // Output: `hello`
/// ```
pub fn demoji(string: String) -> String {
let regex = Regex::new(concat!(
"[",
"\u{01F600}-\u{01F64F}", // emoticons
"\u{01F300}-\u{01F5FF}", // symbols & pictographs
"\u{01F680}-\u{01F6FF}", // transport & map symbols
"\u{01F1E0}-\u{01F1FF}", // flags (iOS)
"\u{002702}-\u{0027B0}",
"\u{0024C2}-\u{01F251}",
"]+",
))
.unwrap();
regex.replace_all(&string, "").to_string()
}