>  기사  >  웹 프론트엔드  >  순수 JS 코드를 사용하여 문자열에 중국어 문자가 몇 개 있는지 확인하는 방법

순수 JS 코드를 사용하여 문자열에 중국어 문자가 몇 개 있는지 확인하는 방법

不言
不言원래의
2018-07-03 10:29:143773검색

이 글에서는 문자열에 한자가 몇 개 있는지 알아내는 JS의 구현 방법을 주로 소개하고, JS를 사용하여 입력 문자열의 길이를 알아내는 두 가지 방법을 공유합니다. 관심있으신 분들은 함께 살펴보세요

웹사이트 개발에서 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=&#39;submit&#39;]").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자로 계산, 문자와 숫자는 1로 계산) # 🎜🎜##🎜 🎜#한자는 데이터베이스에서 2자를 차지합니다. 입력한 문자가 데이터베이스 테이블 필드 길이를 초과하면 오류가 발생하므로 프런트에서 판단해야 합니다. 판단하는 방법은 두 가지가 있습니다:

방법 1: 정규식을 사용합니다. 코드는 다음과 같습니다.

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;
}

Method 2: 문자 유니코드를 사용하여 판단: 방법은 다음과 같습니다.

function getByteLen(val) {
var len = 0;
for (var i = 0; i < val.length; i++) {
var length = val.charCodeAt(i);
if(length>=0&&length<=128)
{
len += 1;
}
else
{
len += 2;
}
}
return len;
}
위 내용은 모두의 학습에 도움이 되기를 바랍니다. 내용이 있으니 PHP 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

JavaScript를 사용하여 이미지 기반 바코드를 얻는 방법

#🎜🎜 ##🎜🎜 #주사위 게임을 구현하는 기본 JS+캔버스 코드

위 내용은 순수 JS 코드를 사용하여 문자열에 중국어 문자가 몇 개 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.