[英]Other language word/string split/manipulation issue
突出顯示文本搜索場景:
例如:如果我有一個詞 RK 並且搜索了 'r',我必須突出顯示 'r' 的第一次出現,即R K。在背景中它就像
<b>R</b>K。
同樣,我必須在 மொ 中突出顯示 ம。 因此,我試圖在 மொ 中找到 ம 的位置並執行突出顯示操作。 在這里,我在操作后得到文本
< b >ம</b >ொ 因此顯示為ம ொ
我用於字符串操作和突出顯示的代碼:
formattedString = string.Empty;
searchStringLength = searchString.Length;
formattedString += inputString.Substring(0, find);
formattedString += "<b>" + inputString.Substring(find, searchStringLength) + "</b>";
formattedString += inputString.Substring(find + searchStringLength);
該示例僅適用於泰米爾語單詞,是否有任何建議使其適用於英語以外的所有其他語言?
我不知道泰米爾語。 看看你的問題,輸入字符串應該是三個字母的字符串。
可能,您正在設置find
變量,例如
find = inputString.IndexOf("ம");?
在您的代碼中的某處。
泰米爾語單詞மொ
不被算作三個字母的單詞。 Visual Studio 將其作為單個字母處理,而மொ.Length
返回ToCharArray()
也返回兩個字符的數組。 這就是為什么IndexOf
總是返回 0。
您對問題的評論:
由於 ம + ொ = மொ,ம find 總是返回 true。 現在在這個解決方案之后,ம find 將返回 false,因此我不必突出顯示。 只有輸入 மொ 進行查找,它才能完全匹配,我才能突出顯示。
我不認為問題出在SubString
。 IndexOf
需要策略性地處理。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.