本文簡要介紹rust語言中 Function std::ascii::escape_default
的用法。
用法
pub fn escape_default(c: u8) -> EscapeDefault
返回生成 u8
的轉義版本的迭代器。
選擇默認值時偏向於生成在各種語言中合法的文字,包括 C++11 和類似的C-family 語言。確切的規則是:
- Tab 轉義為
\t
。 - 回車轉義為
\r
。 - 換行符被轉義為
\n
。 - 單引號被轉義為
\'
。 - 雙引號被轉義為
\"
。 - 反斜杠轉義為
\\
。 - 'printable ASCII' 範圍
0x20
..0x7e
包括在內的任何字符都不會轉義。 - 任何其他字符都以'\xNN' 形式給出十六進製轉義。
- 此函數永遠不會生成 Unicode 轉義。
例子
use std::ascii;
let escaped = ascii::escape_default(b'0').next().unwrap();
assert_eq!(b'0', escaped);
let mut escaped = ascii::escape_default(b'\t');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b't', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'\r');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'r', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'\n');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'n', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'\'');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'\'', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'"');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'"', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'\\');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'\\', escaped.next().unwrap());
let mut escaped = ascii::escape_default(b'\x9d');
assert_eq!(b'\\', escaped.next().unwrap());
assert_eq!(b'x', escaped.next().unwrap());
assert_eq!(b'9', escaped.next().unwrap());
assert_eq!(b'd', escaped.next().unwrap());
相關用法
- Rust eq用法及代碼示例
- Rust eprintln用法及代碼示例
- Rust empty用法及代碼示例
- Rust env用法及代碼示例
- Rust exit用法及代碼示例
- Rust eprint用法及代碼示例
- Rust UdpSocket.set_multicast_loop_v6用法及代碼示例
- Rust i64.overflowing_add_unsigned用法及代碼示例
- Rust Box.downcast用法及代碼示例
- Rust BTreeMap.last_key_value用法及代碼示例
- Rust str.make_ascii_uppercase用法及代碼示例
- Rust u128.checked_pow用法及代碼示例
- Rust usize.wrapping_mul用法及代碼示例
- Rust AtomicU8.fetch_sub用法及代碼示例
- Rust PanicInfo.payload用法及代碼示例
- Rust MaybeUninit.assume_init_mut用法及代碼示例
- Rust String.try_reserve用法及代碼示例
- Rust Mutex.new用法及代碼示例
- Rust f32.exp用法及代碼示例
- Rust Result.unwrap_or_else用法及代碼示例
- Rust slice.sort_unstable_by_key用法及代碼示例
- Rust Formatter.precision用法及代碼示例
- Rust i128.log2用法及代碼示例
- Rust OsStr.to_ascii_uppercase用法及代碼示例
- Rust f32.hypot用法及代碼示例
注:本文由純淨天空篩選整理自rust-lang.org大神的英文原創作品 Function std::ascii::escape_default。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。