如何在python中删除R-T-L字符串的最后一个字符?

前端之家收集整理的这篇文章主要介绍了如何在python中删除R-T-L字符串的最后一个字符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图以“从右到左”的语言删除字符串的最后一个字符.但是,当我这样做时,最后一个字符包裹到字符串的开头.
例如
ותֵיהֶם]:

ותֵיהֶם]

我知道这是我处理R-T-L范式的一个基本问题,但如果有人可以帮助我思考它,我会非常感激.

with open(r"file.txt","r") as f:
    for line in f:
        line = unicode(line,'utf-8')
        the_text = line.split('\t')[1]
        the_text.replace(u'\u05C3','')

解决方法

Unicode中的某些字符始终是LTR,有些字符始终是RTL,有些字符可能取决于其周围的上下文.此外,双向文本的显示上下文将具有“主导”方向性(例如,主要为英文文本配置的文本编辑器将主要是LTR并且具有参差不齐的右边距,一个主要配置为希伯来文将主要是RTL,具有衣衫褴褛的左边缘).

看起来这里发生的事情是,当两个RTL字符之间出现一个结束的方括号字符时,它以RTL格式(第一个例子)呈现,但是当它出现在RTL和LTR字符之间时(或者在它结束时) string – 基本上,它在两侧没有相同方向性的其他字符的某个地方)然后它被认为是与主要方向匹配的任何文本行的一部分.如果您尝试将鼠标拖到字符串上以选择字符,您将看到逻辑上关闭]仍然遵循ֶם,即使在视觉上它似乎已移动.

如果字符串中倒数第二个字符也是希伯来字符(或其他强RTL字符)而不是a],或者显示上下文主要是RTL,那么它将出现在您期望的位置.

猜你在找的Python相关文章