js正規表示式之中文驗證

2021-08-31 10:48:15 字數 775 閱讀 6796

今天做表單提交的輸入框條件驗證,驗證是否包含中文;網上搜了一圈基於js正規表示式的驗證基本不好用,而且大多都是出自一兩篇原文的**!到底什麼才是拿來主義呢。根據搜尋結果,本文取精華,告訴大家乙個好用的中文驗證方法。

使用js正規表示式匹配中文,需要了解中文字元在unicode編碼中所處的區間。這樣才能夠了解表示式的匹配原理。

首先在正規表示式中使用 unicode,必須使用\u開頭,接著是字元編碼的四位16進製制表現形式

簡單匹配中文方法: /[^\u0000-\u00ff]/ (匹配非單位元組字元 )

另錯誤方法:/[^\u00-\uff]/ (匹配 非單位元組字元、還包括一些全半形符號如,.(){}'"!等、還有vwxyz字元)

說明: //u0000-u00ff.包含unicode單位元組編碼( 0-255編碼)包含基本控制字元和拉丁文本母。 採用該否定表示式,粗略判斷是否含有中文。

具體的匹配中文及字元方法:/[\u4e00-\u9fa5\uf900-\ufa2d]/

說明: u4e00-u9fbf :  unicode cjk(中日韓)統一表意字元。u9fa5後至u9fbf為空 

uf900-ufaff :  為unicode  cjk 相容象形文本  。ufa2d後至ufaff為空

具體可參考unicode編碼表:

//是否含有中文(也包含日文和韓文)

function ischinesechar(str)

//同理,是否含有全形符號的函式

function isfullwidthchar(str)

js正規表示式之中文驗證

今天做表單提交的輸入框條件驗證,驗證是否包含中文 網上搜了一圈基於js正規表示式的驗證基本不好用,而且大多都是出自一兩篇原文的 到底什麼才是拿來主義呢。根據搜尋結果,本文取精華,告訴大家乙個好用的中文驗證方法。使用js正規表示式匹配中文,需要了解中文字元在unicode編碼中所處的區間。這樣才能夠了...

js中正規表示式驗證 js 正規表示式驗證

function validation u4e00 u9fa5 uf900 ufa2d validation.checkname function str u4e00 u9fa5 uf900 ufa2d validation.checknames function str 0 9 a za z va...

JS正規表示式驗證

idresult idstr.match 0 9 g 驗證數字的正規表示式集 驗證數字 0 9 驗證n位的數字 d 驗證至少n位數字 d 驗證m n位的數字 d 驗證零和非零開頭的數字 0 1 9 0 9 驗證有兩位小數的正實數 0 9 0 9 驗證有1 3位小數的正實數 0 9 0 9 驗證非零的...