长话短说,我有以下文字的文字:
const string example1 = "good בוקר טוב morning";
我正在尝试将上述文本拆分为4个单词(在我的情况下为令牌)进行处理。无论采取什么方法,我仍然会以错误的顺序得到2个希伯来语。按顺序我的意思是显示顺序而不是逻辑顺序。
对{strong> example1
使用String.Split
时
返回
在上面你可能会注意到2个希伯来语单词现在位于错误的(显示)位置。
预期
我尝试过使用 Regex.Split ,强制使用不变文化,甚至添加Unicode字符,以便按照LTR显示顺序进行拆分。
虽然我并不热衷于通过 Regex 来解决这个问题,但我正在寻找一种解决此类问题的通用方法,这种方法在其他RTL语言中保持原样并说阿拉伯语。
在发布此帖之前,我已检查过以下内容,以防其他人将其标记为重复。
Parsing through Arabic / RTL text from left to right - 假设开发人员知道RTL字的位置。我没有使用分号作为单词分隔符。它可以是任何文化特定的角色。此外,添加不可见标记会导致将来的字符串相等性比较失败。
c# split and revers sentence with two languages - 修改了字符顺序。我希望保持原样。
任何能让我朝着正确方向前进的建议或建议都会受到赞赏。