You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求修复阿拉伯语单词显示异常的Python代码(arabic-reshaper无效)

解决阿拉伯语字符串显示问题的代码方案

你的输入字符串"ﻕﺎﻧﻮﻧ"是阿拉伯语字符的孤立形态且顺序反转导致显示错误,正确的处理需要结合字符反转、形态重塑和方向调整,以下是可行的Python代码:

步骤1:安装依赖库

首先安装需要的两个库:

pip install arabic-reshaper python-bidi

步骤2:处理代码

import arabic_reshaper
from bidi.algorithm import get_display

# 输入的错误字符串
wrong_string = "ﻕﺎﻧﻮﻧ"

# 第一步:反转字符串(输入是按从左到右顺序排列的RTL字符,反转后恢复正确顺序)
reversed_string = wrong_string[::-1]

# 第二步:用arabic-reshaper重塑字符,转换为符合书写规则的连写形态
reshaped_string = arabic_reshaper.reshape(reversed_string)

# 第三步:调整显示方向,确保阿拉伯语按从右到左规则正确渲染
correct_string = get_display(reshaped_string)

print(correct_string)  # 输出:قانون

代码说明

  • 反转字符串:阿拉伯语是从右到左书写的,你的输入将正确字符的顺序反向拆分,反转后才能恢复字符的正确逻辑顺序。
  • arabic-reshaper:负责把孤立形态的阿拉伯语字符,转换为符合书写规范的连写/适配形态。
  • python-bidi:处理文本的双向显示规则,确保最终字符串按阿拉伯语的方向正确显示。

内容的提问来源于stack exchange,提问作者Ahmad Almousa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 07:04:56