我想用空字符串替换以下阿拉伯文本,但是当我使用 string.replace
函数执行此操作时,它不会替换它。
下面是字符串
بِسْمِ ٱللَّهِ ٱلرَّحْمَٰنِ ٱلرَّحِيمِ
来自 http://api.globalquran.com/ayah/2:1/quran-uthmani
代码
singleAyah.verse.replace('بِسْمِ ٱللَّهِ ٱلرَّحْمَٰنِ ٱلرَّحِيمِ', '');
我什至尝试过unicode
singleAyah.verse.replace('\u0628\u0650\u0633\u0652\u0645\u0650 \u0671\u0644\u0644\u0651\u064e\u0647\u0650 \u0671\u0644\u0631\u0651\u064e\u062d\u0652\u0645\u064e\u0670\u0646\u0650 \u0671\u0644\u0631\u0651\u064e\u062d\u0650\u064a\u0645\u0650 \u0627\u0644\u0653\u0645\u0653', '');
它仍然返回文本。
最佳答案
从视觉上看,您的 2 个字符串很相似,但它们具有不同的 unicode 字符串:Fatha ـَ 和 Shada ـّ 之间的顺序交换了位置。这对视觉没有影响,因为这两种情况都以与 Fatha 下的 Shadda 相同的方式呈现:ـَّ ـَّ。
\u0628\u0650\u0633\u0652\u0645\u0650 \u0671\u0644\u0644 \u0651\u064e \u0647\u0650 \u0671\u0644\u0631 \u0651\u064e\u062d\u0652\u0645\u064e\u0670\u0646\u0650 \u0671\u0644\u0631 \u0651\u064e\u062d\u0650\u064a\u0645\u0650
\u0628\u0650\u0633\u0652\u0645\u0650 \u0671\u0644\u0644 \u064e\u0651\u0647\u0650 \u0671\u0644\u0631 \u064e\u0651\u062d\u0652\u0645\u064e\u0670\u0646\u0650 \u0671\u0644\u0631 \u064e\u0651\u062d\u0650\u064a\u0645\u0650
关于javascript - Unicode 字符串替换不适用于完整的变音符号阿拉伯文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37078050/