#arabic #script #sentence #applications #reconstruct #unicode #letter

arabic_reshaper

将阿拉伯语句子重构用于不支持阿拉伯文字符的应用程序

12个版本

0.4.2 2023年8月16日
0.4.1 2021年4月17日
0.4.0 2021年3月25日
0.3.1 2021年3月17日
0.1.6 2018年8月9日

#255 in 文本处理


rtl_reshaper_rs 中使用

MIT 许可证

87KB
2K SLoC

Rust 2K SLoC // 0.1% comments INI 294 SLoC // 0.1% comments

arabic-reshaper-rs

将阿拉伯语句子重构用于不支持阿拉伯语的应用程序。

此crate是python-arabic-reshaper移植到rust。

python-arabic-reshaper类似,它重塑字母,但不反转书写,用户负责这一点:您可以查看Unicode 双向算法或简单地尝试反转字符顺序,看是否适用于您

用法

arabic_reshape:

重塑字母

use arabic_reshaper::arabic_reshape;
let salam = "سلام";
println!("{}",arabic_reshape(salam));
//  سلام is now correctly reshaped but the letters are not reversed yet
// For simple cases we can  use chars().rev()
// For a more correct approach http://unicode.org/reports/tr9/ should be used (via https://docs.rs/unic_bidi crate for example)

查看tests/bench目录中的更多示例。

最低Rust版本

从版本0.4.0开始,msrv为1.51

CLI

rtl_reshaper_rs是一个可用的CLI前端,可以重塑和重新排列stdin

待办事项

  • 记录代码

致谢/更多信息

查看原始的出色python版本。

python-arabic-reshaper

无运行时依赖