`
liuxi1024
  • 浏览: 384933 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript util method--字符串相关操作

阅读更多

代码可能有些地方不够简洁,在这里做一下备忘

 

1、获取字符串字节长度

// 获取字符串字节长度
function calculate_byte(sTargetStr) {
    var sTmpStr, sTmpChar;
    var nOriginLen = 0;
    var nStrLength = 0;
   
    sTmpStr = new String(sTargetStr);
    nOriginLen = sTmpStr.length;

    for ( var i=0 ; i < nOriginLen ; i++ ) {
            sTmpChar = sTmpStr.charAt(i);
            if (escape(sTmpChar).length > 4) {
                    nStrLength += 2;
            } else if (sTmpChar!='\r') {
                    nStrLength ++;
            }
    }
    return nStrLength;
};

 

2、按固定字节长度截取字符串

 

var ssour ='中华人民共和国';

alert(extractFixedByte(ssour,2,8));

/*
*str:传入的字符串
*beginIndex:起始字节数
*iLen:字节长度
*
*/
function extractFixedByte(str,beginIndex,iLen){
	
	var bi=0;
	var bchar;
	var bstr='';
	var bl=0;

if(beginIndex!=0){   	
 for(var j=0;bchar =str.charAt(j);j++){
		bstr += bchar;
		bl +=(bchar.match(/[^\x00-\xff]/) != null ? 2 : 1);
		if(bl>=beginIndex)
		{
			break;
		}
	}
	bi = bstr.length; //获取从那个字符开始截取
}	
	return interExtract(str,bi,iLen);
}

function interExtract(str,beginIndex,iLen){
	var sstr='';
	var l=0;
	var schar;
	
	if(str.replace(/[^\x00-\xff]/g,"xx").length <= iLen)  
    {
        return str;  
    }
	
	for(var i=beginIndex;schar=str.charAt(i); i++){
		sstr += schar;
		l += (schar.match(/[^\x00-\xff]/) != null ? 2 : 1);  
        if(l >= iLen)  
        {  
            break;  
        }
	}
	return sstr;
}

  输出结果:华人民共

 

3、二维数组读写

 

var dataIns=new Array();         //先声明一维
for(var i=0;i<4;i++){          //一维长度为4   
   dataIns[i]=new Array();    //在声明二维
   for(var j=0;j<5;j++){      //二维长度为5
      dataIns[i][j]=''+i+j; 
	}
}

readArray(dataIns);

function readArray(data){
	var dataIn=data;
	for(var i=0;i<dataIn.length;i++){
     for(var j=0;j<dataIn[i].length;j++){
        document.write(dataIn[i][j]+'\n');
     }
   }
}

  4、通过逗号截取字符串

var tempStr = "OOO, AAA, BBB, CCC, DDD";
var tempArr = tempStr.split(",");

var a = tempArr[0];
var b = tempArr[1];
var c = tempArr[2];
var d = tempArr[3];
var o = tempArr[4];
 

 

分享到:
评论

相关推荐

    freemarker总结

    有一种特殊的字符串称为raw字符串,被认为是纯文本,其中的\和{等不具有特殊含义,该类字符串在引号前面加r,下面是一个例子: ${r"/${data}"year""}屏幕输出结果为:/${data}"year" 转义 含义 ...

    DWR.xml配置文件说明书(含源码)

    客户端的javascript将返回给reply对象(此时reply是java.util.date的字符串形式) 3.5 The 'scripted' Creator DWR 已经默认配置了scripted creator配置, 这种类型的creator采用BSF执行脚本语言并返回bean.例如 ......

    千方百计笔试题大全

    54、字符串操作:如何实现字符串的反转及替换? 14 55、编码转换:怎样将GB2312 编码的字符串转换为ISO-8859-1 编码的字符串? 14 56、写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔。 14 59、...

    java面试宝典

    54、字符串操作:如何实现字符串的反转及替换? 14 55、编码转换:怎样将GB2312 编码的字符串转换为ISO-8859-1 编码的字符串? 14 56、写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔。 14 59、...

    Java面试宝典-经典

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    最新Java面试宝典pdf版

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    Java面试笔试资料大全

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    Java面试宝典2010版

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    JAVA面试宝典2010

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    java面试题大全(2012版)

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    Java面试宝典2012版

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    java面试宝典2012

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    Java学习笔记-个人整理的

    {10.1.2}Method}{145}{subsection.10.1.2} {10.1.3}Constructor}{145}{subsection.10.1.3} {10.2}其他Java相关}{146}{section.10.2} {11}项目}{148}{chapter.11} {11.1}ELTS}{148}{section.11.1} {12}Oracle...

    Java面试宝典2012新版

    3、编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串,但要保证汉字不被截取半个,如“我ABC”,4,应该截取“我AB”,输入“我ABC汉DEF”,6,应该输出“我ABC”,而不是“我ABC+汉...

    Java 面试宝典

    35、如何把一段逗号分割的字符串转换成一个数组? ............................................... 25 36、数组有没有 length()这个方法? String 有没有 length()这个方法? .................... 25 37、下面这...

Global site tag (gtag.js) - Google Analytics