Trait std::ascii::AsciiExt1.0.0[][src]

pub trait AsciiExt {
    type Owned;
    fn is_ascii(&self) -> bool;
fn to_ascii_uppercase(&self) -> Self::Owned;
fn to_ascii_lowercase(&self) -> Self::Owned;
fn eq_ignore_ascii_case(&self, other: &Self) -> bool;
fn make_ascii_uppercase(&mut self);
fn make_ascii_lowercase(&mut self); }
👎 Deprecated since 1.26.0:

use inherent methods instead

Expand description

仅 ASCII 子集操作的扩展方法。

请注意,对看似非 ASCII 字符的操作有时会产生意外结果。考虑以下示例:

use std::ascii::AsciiExt;

assert_eq!(AsciiExt::to_ascii_uppercase("café"), "CAFÉ");
assert_eq!(AsciiExt::to_ascii_uppercase("café"), "CAFé");
Run

在第一个示例中,小写的字符串表示为 "cafe\u{301}" (最后一个字符为重音符 combining character)。与字符串中的其他字符不同,合并字符不会映射到大写成员,从而导致 "CAFE\u{301}"。在第二个示例中,小写的字符串表示为 "caf\u{e9}" (最后一个字符是单个 Unicode 字符,表示带有尖音的 ‘e’)。

由于最后一个字符是在 ASCII 的作用域之外定义的,因此不会将其映射到大写成员,从而导致 "CAF\u{e9}"

Associated Types

👎 Deprecated since 1.26.0:

use inherent methods instead

复制的 ASCII 字符的容器类型。

Required methods

👎 Deprecated since 1.26.0:

use inherent methods instead

检查该值是否在 ASCII 范围内。

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

👎 Deprecated since 1.26.0:

use inherent methods instead

使值的副本等效于其 ASCII 大写字母。

ASCII 字母 ‘a’ 到 ‘z’ 映射到 ‘A’ 到 ‘Z’,但是非 ASCII 字母不变。

要就地将值大写,请使用 make_ascii_uppercase

要除非 ASCII 字符外还使用大写 ASCII 字符,请使用 str::to_uppercase

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

👎 Deprecated since 1.26.0:

use inherent methods instead

以等效的 ASCII 小写形式复制值。

ASCII 字母 ‘A’ 到 ‘Z’ 映射到 ‘a’ 到 ‘z’,但是非 ASCII 字母不变。

要就地小写该值,请使用 make_ascii_lowercase

要除非 ASCII 字符外还使用小写 ASCII 字符,请使用 str::to_lowercase

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

👎 Deprecated since 1.26.0:

use inherent methods instead

检查两个值是否为 ASCII 不区分大小写的匹配。

to_ascii_lowercase(a) == to_ascii_lowercase(b) 相同,但不分配和复制临时文件。

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

👎 Deprecated since 1.26.0:

use inherent methods instead

将此类型就地转换为其 ASCII 大写等效项。

ASCII 字母 ‘a’ 到 ‘z’ 映射到 ‘A’ 到 ‘Z’,但是非 ASCII 字母不变。

要返回新的大写值而不修改现有值,请使用 to_ascii_uppercase

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

👎 Deprecated since 1.26.0:

use inherent methods instead

将此类型就地转换为其 ASCII 小写等效项。

ASCII 字母 ‘A’ 到 ‘Z’ 映射到 ‘a’ 到 ‘z’,但是非 ASCII 字母不变。

要返回新的小写值而不修改现有值,请使用 to_ascii_lowercase

Note

不推荐使用此方法,而推荐使用 u8char[u8]str 上相同名称的固有方法。

Implementors

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead

👎 Deprecated since 1.26.0:

use inherent methods instead