我在连接混合西方和阿拉伯字符的文本时遇到了麻烦。
我有一个这样的令牌列表:
-LRB-
دریای
مازندران
-RRB-
,
我使用以下过程来连接这些令牌列表:
String str = "";
for (String tok : tokens) {
str += tok + " ";
}
这是我的程序的输出:
-LRB- دریای مازندران -RRB- ,
可以看出,阿拉伯语单词的位置是倒置的。我该如何解决这个问题(也许建议 Java 忽略有关文本方向的信息)?
编辑
实际上,我的问题似乎是一个错误的问题。现在我有了一个新的。我需要将每个单词包装在这样的字符串(word *)
中,以便我的输出如下所示:
(word1 *)(word2 *)(word3 *)...
我使用的程序如下:
String str = "";
for (String tok : tokens) {
str += "(" + tok + "*)";
}
但是,我得到的结果是这样的:
(-LRB- *)(دریای *)(مازندران *)(-RRB- *)(, *)
代替:
(-LRB- *)(دریای)(* مازندران *)(-RRB- *)(, *)
** EDIT2 ** 实际上,我发现我的问题不是问题。我在一个文件上写了我的字符串,然后用 nano(在控制台中)打开它。它被正确连接。
所以问题是由于 Eclipse 控制台(还有 gedit)——让我们说——错误地呈现了字符串。
无论如何,感谢您的帮助!