无法用双向语言编写字符串。似乎不可能完成任务

时间:2016-05-17 15:49:48

标签: unicode bidi

我有以下字符串:

Auth::attempt()

2个R2L字符(希伯来语或阿拉伯语),中间有2位数字。所有字符用空格分隔。

现在我需要在2个数字之间插入一个英文字符,让我们说一个大写的'X'。我尝试的任何东西都会洗掉字符串。如何在不弄乱此字符串的情况下键入这些字符序列?

1 个答案:

答案 0 :(得分:0)

解决与所有数字和所有RTL字符一起使用的问题的最佳方法是使用this answer to a similar question中指示的LTR标记。

所以你的字符串需要字符:

  

U+05D4

     

U+200E

     

U + 0020(简单空间)

     

U + 0031(简单1)

     

U + 0020(简单空间)

     

U + 00XX(任何普通的ASCII字母)

     

U + 0020(简单空间)

     

U + 0032(简单2)

     

U + 0020(简单空间)

     

U+05D0(如果您愿意,可以使用Math Aleph)

您只需要在RTL(希伯来语或阿拉伯语)字母后面有字符的地方添加LTR标记。