一部の同僚は、会社のOAに投稿を投稿し、JavaScriptで中国語の英語混合文字列の長さを得る方法を紹介しました。
正規表現が使用されます。
次のようにコードコードをコピーします。
var str = "タンクはタンクの音訳です";
var len = str.match(/[^ - ]/g)== null?
私は本をチェックして少し理解しました:
西部のテキストで一般的に使用される文字は、空間で構成されています」(0x20)から「〜」(0x7e)。
次のようにコードコードをコピーします。
string.match(regex)は、アレイの形の文字列の形で正規表現の文字列を返します。
str.match(/[^ -〜]/g)は、漢字を配列の形で返します。例えば
var str = "dd brother";
//「Big、Brother」を表示し、配列に2つの漢字を返し、配列の長さは2です
アラート(str.match(/[^ - ]/g);
このように、var len = str.match([^ - ] == null:str.length + str.match(/[^ - ]) 。
JavaScriptでは、漢字の長さも1として計算されます。多くの場合、データベースで過度の長さを引き起こすエラーです。
注:上記のコードにはいくつかの問題があります。
次のようにコードコードをコピーします。
関数get_strlenth(str)
{{
var len = 0;
if(str.match(/[^ - ]/g)== null)
{{
len = str.length;
}
それ以外
{{
len = str.length + str.match(/[^ - ]/g).length;
}
レンを返します。
}