Я пытаюсь разобрать некоторый тайский текст в соответствии с правилами, описанными здесь http://www.thai -language.com / ref / spacing
По сути, я хочу найти строки символов между пробелами и пунктуацией, аналогично тому, как мы это делаем на английском языке. Я понимаю, что сами слова не обязательно разделяются пробелами на тайском, это нормально.
Для разбора текста я попытался просто зациклить, как
while( Char.IsLetterOrDigit(theText[i++]) ) {}
, чтобы найти следующий символ, который не является буквой или цифрой. Это работает за исключением некоторых персонажей, подобных этому
, который является вторым символом в этом слове (я думаю, что это символ «надстрочный знак» первого символа в слове).
Похоже, что этот класс не относится ни к какому классу Char, то есть:
Char.IsLowSurrogate((char)3657)
Char.IsPunctuation((char)3657)
Char.IsWhiteSpace((char)3657)
Char.IsSymbol((char)3657)
Char.IsSeparator((char)3657)
Char.IsDigit((char)3657)
Char.IsControl((char)3657)
Char.IsLetter((char)3657)
Char.IsSurrogate((char)3657)
все возвращают false
.
Этот символ может быть «тоном» - как его можно определить с помощью .NET?