zoukankan      html  css  js  c++  java
  • js去掉字符串前后空格的五种方法

    第一种:循环检查替换
    [javascript]
    //供使用者调用  
    function trim(s){  
    return trimRight(trimLeft(s));  
    }  
    //去掉左边的空白  
    function trimLeft(s){  
    if(s == null) {  
    return "";  
    }  
    var whitespace = new String(" ");  
    var str = new String(s);  
    if (whitespace.indexOf(str.charAt(0)) != -1) {  
    var j=0, i = str.length;  
    while (j < i && whitespace.indexOf(str.charAt(j)) != -1){  
    j++;  
    }  
    str = str.substring(j, i);  
    }  
    return str;  
    }  
    //去掉右边的空白 www.2cto.com   
    function trimRight(s){  
    if(s == null) return "";  
    var whitespace = new String(" ");  
    var str = new String(s);  
    if (whitespace.indexOf(str.charAt(str.length-1)) != -1){  
    var i = str.length - 1;  
    while (i >= 0 && whitespace.indexOf(str.charAt(i)) != -1){  
    i--;  
    }  
    str = str.substring(0, i+1);  
    }  
    return str;  

    第二种:正则替换
    [javascript]
    <SCRIPT LANGUAGE="JavaScript">  
    <!--  
    String.prototype.Trim = function()  
    {  
    return this.replace(/(^s*)|(s*$)/g, "");  
    }  
    String.prototype.LTrim = function()  
    {  
    return this.replace(/(^s*)/g, "");  
    }  
    String.prototype.RTrim = function()  
    {  
    return this.replace(/(s*$)/g, "");  
    }  
    //-->  
    </SCRIPT> 
    第三种:使用jquery
    [javascript]
    $.trim(str) 
    jquery内部实现为:
    [javascript]
    function trim(str){   
        return str.replace(/^(s|u00A0)+/,'').replace(/(s|u00A0)+$/,'');   
    }   
    第四种:使用motools
    [javascript]
    function trim(str){   
        return str.replace(/^(s|xA0)+|(s|xA0)+$/g, '');   
    }  
    第五种:裁剪字符串方式
    [javascript]
    function trim(str){   
        str = str.replace(/^(s|u00A0)+/,'');   
        for(var i=str.length-1; i>=0; i--){   
            if(/S/.test(str.charAt(i))){   
                str = str.substring(0, i+1);   
                break;   
            }   
        }   
        return str;   
    }  
    经过测试第五种方法在处理长字符串时效率最高。

  • 相关阅读:
    NHibernate之(12):初探延迟加载机制
    NHibernate之(11):探索多对多关系及其关联查询
    NHibernate之(10):探索父子(一对多)关联查询
    NHibernate之(9):探索父子关系(一对多关系)
    NHibernate之(8):巧用组件之依赖对象
    NHibernate之(7):初探NHibernate中的并发控制
    NHibernate之(5):探索Insert, Update, Delete操作
    NHibernate之(6):探索NHibernate中的事务
    NHibernate之(4):探索查询之条件查询(Criteria Query)
    读写文件
  • 原文地址:https://www.cnblogs.com/xiaochao12345/p/4095435.html
Copyright © 2011-2022 走看看