我正在爲項目使用雙向文本(混合英語和希伯來語)。文本以HTML格式顯示,因此有時需要使用LTR或RTL標記(‎
或‏
)才能使「弱字符」正確顯示爲標點符號。由於技術限制,這些標記在源文本中不存在,所以我們需要添加它們以使最終顯示的文本顯示正確。自動插入LTR標記
例如,以下文本:(example: מדגם) sample
呈現爲從右到左模式的sample (מדגם :example)
。正確的字符串看起來像‎(example:‎ מדגם) sample
,並將呈現爲sample (מדגם (example:
。
我們希望快速插入這些標記,而不是重新編寫所有文本。起初,這似乎很簡單:只需將‎
附加到標點符號的每個實例。但是,一些需要動態修改的文本包含HTML和CSS。造成這種情況的原因是不幸的,也是不可避免的。
解析HTML/CSS的不足之處,是否有一種已知算法用於即時插入Unicode定向標記(僞強字符)?
一讓這變得更加困難的事情是破壞了HTML,但一個寬容的解析器可以幫助解決這個問題。對於這個應用程序,我們實際上使用HTML片段,因此解析是粗略的。真正的解決方案是在流程的早期推動變革。 – 2011-03-11 15:49:15