接到測試提了乙個bug,說有個校驗姓名是否是漢字的功能不正確。測試的漢字為:㑳
檢視**,校驗方法是用正規表示式。正則為 "^[\u4e00-\u9fa5@]$"
然後網上查了一下相關的驗證方式。通過正則驗證的,正規表示式都是上面那個,比如 驗證1,驗證2
因為這個驗證是大部分漢字都能校驗通過,部分漢字校驗不通過,猜想應該是這個漢字校驗的字符集不全的問題,轉而查一下漢字的unicode編碼表。果不其然,\u4e00-\u9fa5只是漢字的基本字符集,還有好多增補、擴充套件的字符集沒有包括進來。到這裡,為題迎刃而解,把其它增補、擴充套件的字符集的unicode編碼範圍新增到正規表示式中就把問題搞定了。
C 判斷輸入的是否是漢字
第一種方法 正規表示式 string text 是不是漢字 for int i 0 i text.length i console.readkey 第二種方法 漢字的 unicode 編碼範圍 string text 是不是漢字 char c text.tochararray for int i 0...
判斷字元是否是GB2312 80的漢字。
首先,先介紹gb2312 80編碼。參看文章 gb2312編碼 以下內容來自那篇文章。gb2312或gb2312 80是乙個簡體中文字符集的中國國家標準,全稱為 資訊交換用漢字編碼字符集 基本集 由中國國家標準總局發布,1981年5月1日實施。gb2312編碼通行於大陸 新加坡等地也採用此編碼。幾乎...
判斷字元是否是GB2312 80的漢字。
首先,先介紹gb2312 80編碼。參看文章 gb2312編碼 以下內容來自那篇文章。gb2312或gb2312 80是乙個簡體中文字符集的中國國家標準,全稱為 資訊交換用漢字編碼字符集 基本集 由中國國家標準總局發布,1981年5月1日實施。gb2312編碼通行於大陸 新加坡等地也採用此編碼。幾乎...