在網站開發中,常常會簡單使用js程式碼來判斷字串中有多少漢字的功能。今天小編抽時間跟大家分享實現程式碼。廢話不多說了,直接給大家貼程式碼了。
$("form").submit(function () { var content = editor.getContentTxt(); var sum = 0; re = /[\u4E00-\u9FA5]/g; //测试中文字符的正则 if (content) { if (re.test(content)) //使用正则判断是否存在中文 { if (content.match(re).length <= 10) { //返回中文的个数 $.dialog.tips("帖子正文不能小于10个汉字!"); return false; } else { var $submit = $("input[type='submit']").attr("disabled", true); setTimeout(function () { $submit.attr("disabled", false) }, 5000); return true; } } else { $.dialog.tips("帖子正文不能小于10个汉字!"); return false; } } else { $.dialog.tips("帖子正文不能小于10个汉字!"); return false; } });
好了,以上程式碼是js判斷字串有多少漢字的實作方法。
ps:JS判斷輸入字串長度(漢字算兩個字符,字母數字算一個)
漢字在資料庫中佔2個字符,如果輸入字符超過資料庫表格字段長度,會出現錯誤,因此需要在前台進行判斷。有兩種方法可以判斷:
方法一:使用正規表示式,代碼如下:
function getByteLen(val) { var len = 0; for (var i = 0; i < val.length; i++) { var a = val.charAt(i); if (a.match(/[^\x00-\xff]/ig) != null) { len += 2; } else { len += 1; } } return len; }
方法二:使用字元unicode