Unicode字符串替换不适用于完整的变音符号阿拉伯文本



我想用空字符串替换下面的阿拉伯文本,但当我使用string.replace函数时,它不会替换它。

以下是字符串

بددمداٱلَهارل

来自http://api.globalquran.com/ayah/2:1/quran-uthmani

代码

singleAyah.verse.replace('بِسْمِ ٱللَّهِ ٱلرَّحْمَٰنِ ٱلرَّحِيمِ', '');

我甚至尝试过unicode

singleAyah.verse.replace('u0628u0650u0633u0652u0645u0650 u0671u0644u0644u0651u064eu0647u0650 u0671u0644u0631u0651u064eu062du0652u0645u064eu0670u0646u0650 u0671u0644u0631u0651u064eu062du0650u064au0645u0650 u0627u0644u0653u0645u0653', '');

它仍然返回文本。

从视觉上看,您的2个字符串是相似的,但它们有一个不同的unicode字符串:Fathaَ和Shada的顺序在位置上交换。这对视觉没有影响,因为这两种情况在Fatha下的Shadda渲染方式相同:

\u0628\u0650\u0633\u0652\u0645\u0650\u0671\u0644\u0644\u0651\u064e\u06 47\u06 50\u0671\u0644\u0631\u0651\u064e\u06 2d\u0652\u0645\u064e\u0670\u0646\u0650\u0671\u0644\u0631\u0651\u064e\u06 2d\u06 50\u06 4a\u06 45\u06 50

\u0628\u0650\u0633\u0652\u0645\u0650\u0671\u0644\u0644\u064e\u0651\u06 47\u06 50\u0671\u0644\u0631\u064e\u0651\u02d\u0652\u0645\u064e\u0670\u0646\u0650\u0671\u0644\u0631\u064e\u0651\u02d\u0650\u064a\u0645\u0650

最新更新