1

我想使用 RegEx 删除不必要的 ZWNJ,目前我硬编码了一些在任何情况下都不需要 ZWNJ 的字符,但是如何将其扩展到所有这些字符?

 preg_replace('#(?<=[ادذرزژوآأإءa-zA-Z])\x{u200C}#u', '', $parsi);

当 ZWNJ 放置在两个原本会连接成连字的字符之间时,ZWNJ 会使它们分别以最终形式和初始形式打印。这也是空格字符的效果,但是当希望将单词保持得更近时使用 ZWNJ。

如果我们需要将问题限制为阿拉伯文字,是否有任何 RegEx 元字符来表示没有中间形式的字母(等等不需要后续的 ZWNJ )?

4

1 回答 1

-1

作为一个非阿拉伯语的人,这几乎不是我的专业领域,但是...... 在这里我找到了一些关于阿拉伯语 unicode 字符的信息。

我建议按照以下方式做一些事情:

 [\u0600-\u065F\u066A-\u06EF\u06FA-\u06FF]

选择所有阿拉伯字母。

于 2013-07-05T09:00:26.780 回答