[問題] VS的Textbox會擅自轉換文字?
我有一個越南字母
https://www.google.com.tw/#q=u%CC%81
從這邊可以看到這個字的長相
然後我的window form程式中有一個普通的textbox
輸入後程式會檢查輸入的文字是不是英文
如果是英文就提出警告
可是當我把這個字母輸入到textbox中
他的長相會變成普通的小寫英文字母u
然後被正規式檢驗為英文字母跳出警告
但這明明就是越南字母阿...
同樣的情況還發生在這個字母上
https://www.google.com.tw/#q=e%CC%81
這也是我貼上textbox後就變成普通的e了...
上面那撇就這樣不見,複製出來後也變成普通的英文字母e
要讓textbox能正確接受我輸入的文字
請問該怎麼改善比較好orz
謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.134.18.8
※ 文章網址: http://www.ptt.cc/bbs/C_Sharp/M.1411109730.A.307.html
→
09/19 15:00, , 1F
09/19 15:00, 1F
推
09/19 15:09, , 2F
09/19 15:09, 2F
→
09/19 15:13, , 3F
09/19 15:13, 3F
→
09/19 15:13, , 4F
09/19 15:13, 4F
→
09/19 15:14, , 5F
09/19 15:14, 5F
→
09/19 17:32, , 6F
09/19 17:32, 6F
→
09/19 17:33, , 7F
09/19 17:33, 7F
→
09/19 17:33, , 8F
09/19 17:33, 8F
我發現一個情況,就是我的textbox設定字元長度為1
然後如果調大,這個字就可以顯示了
http://www.regexr.com/ 我把字貼在這網站上,發現他後面還跟著一個奇怪的符號
可是明明只是一個字
但這樣我就搞不懂了,如果是因為一個字元放不下表示這個字的所有資料
那中文字不是也應該會有一樣的問題嗎...
我在想這個字其實是一個e加上一個修飾,表現成一個字的樣子
所以如果只放的下第一個字,就只剩下e
但又不是所有的字都這樣orz...
※ 編輯: Peruheru (220.134.18.8), 09/19/2014 17:44:41
推
09/19 19:54, , 9F
09/19 19:54, 9F
→
09/19 19:54, , 10F
09/19 19:54, 10F
→
09/19 19:55, , 11F
09/19 19:55, 11F
→
09/19 19:56, , 12F
09/19 19:56, 12F
→
09/19 19:57, , 13F
09/19 19:57, 13F
推
09/19 19:59, , 14F
09/19 19:59, 14F
感謝你的回應,我先將輸入欄位限制稍微調大
然後用 String.Normalize() 將輸入值轉換為NFC以後
就可以以單一字元的方式處理他了
因為我還有另一個需求是要用正規式檢查他
而我檢查的內容是不可以含有英數
按照說明中如果使用NFKC的話,似乎在 e 上面有一撇的情況也會被 e 的檢查結果查出
(說明中提到如果是羅馬字母的 11(XI) ,查 X 時NFC查不到而NFKC查的到)
所以我覺得我好像是該用NFC來處理
不知道我有沒有誤解
※ 編輯: Peruheru (220.134.18.8), 09/22/2014 12:08:46