我有一个乌尔都语单词“لاعلم”和更多类似的单词。如何将我得到“لا”和“علم”的单词分开放在一个数组中?我尝试将单词转换为 unicode 字符,但我无法检测到“لا”和“علم”之间的中断。
可以根据空格轻松分隔英语单词,但我坚持使用没有空格的乌尔都语单词分隔。
没有空格,因为它只有一个词,意思是“无知”。事实上,“لا”和“علم”分开并没有任何意义。
在乌尔都语(和阿拉伯语脚本)中插入空格是为了在字体会自动将其与相邻字符连在一起时划分单词的实际需要。撤消连字的唯一方法是在字符之间插入多余的空格。从技术上讲,ZERO WIDTH NON-JOINER (U+200C) 正是为此目的,但人类学起来很慢,空间很容易插入。
有些字符不与后面的字母连接,例如“ا”不会与任何后面的字符连接,但可以与前面的字符如“ل”形成连字“لا”。您可以使用此字符列表(与阿拉伯语相同的规则)并编写自定义音调器,在“右连接”字符、ZWNJ 或空格之后结束一个单词。