js 字符串(中文)获取长度 截取中文字符串
2012-12-21 17:33
609 查看
<script type="text/javascript" >
/*
*自定义字符串属性
*/
//计算字符串长度
String.prototype.strLen = function() {
var len = 0;
for (var i = 0; i < this.length; i++) {
if (this.charCodeAt(i) > 255 || this.charCodeAt(i) < 0) len += 2; else len ++;
}
return len;
}
//将字符串拆成字符,并存到数组中
String.prototype.strToChars = function(){
var chars = new Array();
for (var i = 0; i < this.length; i++){
chars[i] = [this.substr(i, 1), this.isCHS(i)];
}
String.prototype.charsArray = chars;
return chars;
}
//判断某个字符是否是汉字
String.prototype.isCHS = function(i){
if (this.charCodeAt(i) > 255 || this.charCodeAt(i) < 0)
return true;
else
return false;
}
//截取字符串(从start字节到end字节)
String.prototype.subCHString = function(start, end){
var len = 0;
var str = "";
this.strToChars();
for (var i = 0; i < this.length; i++) {
if(this.charsArray[i][1])
len += 2;
else
len++;
if (end < len)
return str;
else if (start < len)
str += this.charsArray[i][0];
}
return str;
}
//截取字符串(从start字节截取length个字节)
String.prototype.subCHStr = function(start, length){
return this.subCHString(start, start + length);
}
//运行实例
var str1 = str.subCHStr(20,0);
var str2 = str.subCHString(20,40);
alert(str1 + " == " + str2);
</script>
<script type="text/javascript" >
//附带一个单独计算长度函数
var str_len = getLen(str);
// alert(str_len);
function getLen( str) {
var totallength=0;
for (var i=0;i<str.length;i++)
{
//charCodeAt 返回一个整数,获得字符的unicode编码
var intCode=str.charCodeAt(i);
if (intCode>=0&&intCode<=128) {//为字符的编码范围
totallength=totallength+1;//非中文单个字符长度加1
}
else {
totallength=totallength+2;//中文字符长度则加2
}
}
return totallength;
}
</script>
文章来自:http://www.3lian.com/edu/2014/03-19/135471.html
/*
*自定义字符串属性
*/
//计算字符串长度
String.prototype.strLen = function() {
var len = 0;
for (var i = 0; i < this.length; i++) {
if (this.charCodeAt(i) > 255 || this.charCodeAt(i) < 0) len += 2; else len ++;
}
return len;
}
//将字符串拆成字符,并存到数组中
String.prototype.strToChars = function(){
var chars = new Array();
for (var i = 0; i < this.length; i++){
chars[i] = [this.substr(i, 1), this.isCHS(i)];
}
String.prototype.charsArray = chars;
return chars;
}
//判断某个字符是否是汉字
String.prototype.isCHS = function(i){
if (this.charCodeAt(i) > 255 || this.charCodeAt(i) < 0)
return true;
else
return false;
}
//截取字符串(从start字节到end字节)
String.prototype.subCHString = function(start, end){
var len = 0;
var str = "";
this.strToChars();
for (var i = 0; i < this.length; i++) {
if(this.charsArray[i][1])
len += 2;
else
len++;
if (end < len)
return str;
else if (start < len)
str += this.charsArray[i][0];
}
return str;
}
//截取字符串(从start字节截取length个字节)
String.prototype.subCHStr = function(start, length){
return this.subCHString(start, start + length);
}
//运行实例
var str1 = str.subCHStr(20,0);
var str2 = str.subCHString(20,40);
alert(str1 + " == " + str2);
</script>
<script type="text/javascript" >
//附带一个单独计算长度函数
var str_len = getLen(str);
// alert(str_len);
function getLen( str) {
var totallength=0;
for (var i=0;i<str.length;i++)
{
//charCodeAt 返回一个整数,获得字符的unicode编码
var intCode=str.charCodeAt(i);
if (intCode>=0&&intCode<=128) {//为字符的编码范围
totallength=totallength+1;//非中文单个字符长度加1
}
else {
totallength=totallength+2;//中文字符长度则加2
}
}
return totallength;
}
</script>
文章来自:http://www.3lian.com/edu/2014/03-19/135471.html
相关文章推荐
- js获取(包括中文)字符串长度与截取字符串
- JS~字符串长度判断,超出进行自动截取(支持中文)
- php中中文字符串的截取和获取长度 mb_substr() mb_strlen()
- 通过js来获取包含中文字符的字符串的长度的方法
- 通过js来获取包含中文字符的字符串的长度的方法
- JS获取字符串长度,一个中文算两个字符。
- JS~字符串长度判断,超出进行自动截取(支持中文)
- JS获取字符串长度(英文占1个字符,中文汉字占2个字符)
- JS字符串长度判断,超出进行自动截取的实例(支持中文)
- JS~字符串长度判断,超出进行自动截取(支持中文)
- JS获取字符串长度(中文占两个,数字与英文占一个)
- JS~字符串长度判断,超出进行自动截取(支持中文)
- JS~字符串长度判断,超出进行自动截取(支持中文)
- js--小demo--字符串长度判断,超出进行自动截取(支持中文)
- 获取包含中文字符串的长度、截取包含中文的字符串
- 学习笔记之vc 6.0 下 含中文字符串 字符长度 获取及截取
- JS获取字符串长度,1个中文=2个英文
- PHP截取字符串,获取长度,获取字符位置的函数 中文字符截取
- php 截取中文字符串 , 获取字符串长度
- JS验证字符串是否以某一子串结尾,验证字符串是否以某一子串开始;计算字符串长度,中文为2,英文为1,以此累计