1

我正在尝试突出显示泰语文本中的一些子字符串:

high = high.Insert(myString.Index + myString.Length + "<b>" + currentLength, "</b>");

问题是,该myString字符串包含一个特殊的泰语字符(“เงินฝาก”)。给定字符串的长度应为 7,但长度被解析为 6。它仅部分突出显示文本,不包括最后一个字符。

我已经尝试对字符串进行编码(高位和myString字符串)。但它没有用。您对如何处理此问题有任何提示吗?我也试过这个Replace方法,但没有用。

提前致谢!

4

1 回答 1

-1

简单的概念是忽略上标和下标泰语字符的计数,如下面的示例代码:

    public int ThaiLength(string text)
    {
        int c = 0;
        int l = text.Length;

        for (int i = 0; i < l; ++i)
        {
            if (char.GetUnicodeCategory(text[i]) != System.Globalization.UnicodeCategory.NonSpacingMark)
                ++c;
        }

        return c;
    }
于 2016-10-28T14:53:12.813 回答