9个版本
0.4.0 | 2024年2月29日 |
---|---|
0.3.4 | 2023年5月22日 |
0.3.2 | 2022年8月18日 |
0.3.0 | 2022年7月7日 |
0.1.1 | 2020年12月18日 |
#24 in 国际化(i18n)
7,784 每月下载次数
用于 65 个crate(直接使用15个)
51KB
1.5K SLoC
语种标签
此crate提供了由RFC5646 (BCP47)定义的语种标签的实现。
用法
您可以从任何字符串中轻松解析新的语言
use langtag::LangTag;
fn main() -> Result<(), langtag::InvalidLangTag<&'static str>> {
let tag = LangTag::new("fr-FR")?;
assert_eq!(tag.language().unwrap().primary(), "fr");
assert!(tag == "Fr-fr"); // comparison is case-insensitive.
Ok(())
}
请注意,LangTag::new
不会复制它所给的数据,而是仅借用它。LangTagBuf
类型允许您拥有语种标签。一旦解析,您可以使用提供的函数探索语种标签的每个组件。
许可证
根据以下任一许可证授权
- Apache许可证2.0版本 (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
您可选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的任何有意提交以包含在作品中的贡献,应如上双授权,没有任何额外的条款或条件。
依赖项
~2.6–3.5MB
~77K SLoC