javascript模仿php 函数 trim  ltrim rtrim,去除字符串两边空格或其他符号

本文地址:js trim js php trim

 function trims(){
    this.init = function(myarguments){
        if(arguments.length===0){return false;}
        this.arg = myarguments;
        this.len = this.arg.length;
        if(this.len>0){ this.str = this.arg[0]; }
        if(this.len>1){ this.thechar = this.arg[1]; }
        if(typeof this.thechar=='undefined'){
            this.rg_l = new RegExp("^(\\s|\\u00A0)+");
            this.rg_r = new RegExp("\\S");
        }else{
            this.rg_l = new RegExp("^("+this.thechar+")+");
            this.rg_r = new RegExp("[^"+this.thechar+"]{1}");
        }
    };
    if (typeof trims._initialized == "undefined") {
        trims.prototype.ltrim = function() {
          this.str = this.str.replace(this.rg_l,'');
        };
        trims.prototype.rtrim = function() {
            for(var i=this.str.length-1; i>=0; i--){
                if(this.rg_r.test(this.str.charAt(i))){
                    this.str = this.str.substring(0, i+1);
                    break;
                }
            }
        };
        trims._initialized = true;
    }
};
var trimsobj = new trims();
function trim(){
    trimsobj.init(arguments);
    trimsobj.ltrim();
    trimsobj.rtrim();
    return trimsobj.str;
}
function rtrim(){
    trimsobj.init(arguments);
    trimsobj.rtrim();
    return trimsobj.str;
}
function ltrim(){
    trimsobj.init(arguments);
    trimsobj.ltrim();
    return trimsobj.str;
}

测试

console.log(trimsobj);
var str = ',,n我们,,';
var xx;
xx = trim(str,',');
document.write('--'+xx+'--');
str = ',,天朗,,';
xx = trim(str,',');
document.write('--'+xx+'--');
str = ',,左侧trim,,';
xx = ltrim(str,',');
document.write('--'+xx+'--');
str = ',,右侧trim,,';
xx = rtrim(str,',');
document.write('--'+xx+'--');
var str = '  n我们  ';
var xx;
xx = trim(str);
document.write('--'+xx+'-- ');
str = '  天朗  ';
xx = trim(str);
document.write('--'+xx+'-- ');
str = '  左侧trim  ';
xx = ltrim(str);
document.write('--'+xx+'-- ');
str = '  右侧trim  ';
xx = rtrim(str);
document.write('--'+xx+'-- ');

javascript模仿php 函数 trim ltrim rtrim (原创)的更多相关文章

  1. javascript对字符串的常见操作trim,ltrim,rtrim,isEmpty,isFloat等

    1.验证字符串是否为空格.是否包含非法字符. //验证是否字符串有非法字符 function v_invalide_char(value,msg){ var arr = ['#','@','!','$ ...

  2. mysql向表中某字段前后追加一段字符串 concat(), trim(), ltrim(), rtrim(), repeat()

    1.mysql向表中某字段后面追加一段字符串:update table_name set field=CONCAT(field, '分隔符', str);//'分隔符',可以为空,也可以省略updat ...

  3. TRIM ,LTRIM ,RTRIM ,空格过滤

  4. JavaScript去除空格的三种方法(正则/传参函数/trim)

    方法一: 个人认为最好的方法.采用的是正则表达式,这是最核心的原理. 其次.这个方法使用了JavaScript 的prototype 属性 其实你不使用这个属性一样可以用函数实现.但这样做后用起来比较 ...

  5. Javascript学习之函数(function)

    在JS中,Function(函数)类型实际上是对象;每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法.由于函数是对象,因此函数名实际上也是一个指向函数对象的指针. 一 函 ...

  6. PHP字符串函数-trim()实例用法

    string trim ( string $str [, string $charlist = " \t\n\r\0\x0B" ] )此函数返回字符串 str 去除首尾空白字符后的 ...

  7. 去除前后空格,Oracle和SQLSERVER都适用。ltrim(rtrim(’ ‘))

    Oracle自带去除方法:trim(). 但是sql语法中没有直接去除两头空格的函数,但有ltrim()去除左空格rtrim()去除右空格. 合起来用就是sql的trim()函数,即select lt ...

  8. javascript立即执行函数

    javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花;当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解.  ( ...

  9. JavaScript 立即执行函数

    js中(function(){…})()立即执行函数写法理解 javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法 ...

随机推荐

  1. wpf 将Style应用到 ListView 中的 ListViewItem 元素

    例: 为每个条目元素设置右键菜单 1. 新建右键菜单元素和样式元素 注意: 同时设置样式元素的 TargetType 属性和 x:Key 属性, 将样式元素限定为应用于 ListViewItem 类型 ...

  2. 【五子棋AI循序渐进】——整合完成

    经过一年多的学习和探索,终于在今天得到了一些回报,在实现PVS多线程和加入了一个新的启发模式之后,搜索速度达到了120K左右,现在整合了VCF/VCT引擎.PVS混合引擎之后,棋力与连珠fiver6基 ...

  3. Nodejs开发(2.连接MongoDB)

    一.先配置MongoDB Win10下下载那个安装版,zip版的会报却各种DLL,安装在你希望的路径,实在安装错了,就剪切过来也行(本例E:\mongodb). 然后是配置启动脚本,就是写一个bat文 ...

  4. 【Git】安装以及第一次使用Git和GitHub傻瓜教程

    1.下载安装git(windows7) 下载git:https://www.git-scm.com/download/win 点击exe文件一路next就可以. 2.配置(参考:http://git. ...

  5. 手写一个更好用的performSelector/msgSend(详细修改版)

    这其实是一个NSInvocation练习作业 GitHub源码 vk_msgSend 引子 工作中难免会遇到一些场景,开发的时候不想引入整个头文件,但是又想调用一些方法 动态创建,动态调用看起来比较酷 ...

  6. LeetCode Two Sum II - Input array is sorted

    原题链接在这里:https://leetcode.com/problems/two-sum-ii-input-array-is-sorted/ 题目: Given an array of intege ...

  7. VMware workstaion上传虚拟机到VMware EXSI 5.5

    1.首先在VMware Workstation 文件 --- 连接VMware EXSI5.5服务器. 2.输入VMware EXSI 5.5服务器地址.用户名和密码. 3.右键Windows  7 ...

  8. Vcenter server 5.5上传ISO镜像

    1.摘要 --- 浏览要上传的硬盘. 2.创建一个文件夹专业门存放ISO镜像. 3.选择上传文件. 4.选择文件上传即可.

  9. 【转】数据库系统异常排查之DMV

    数据库系统异常是DBA经常要面临的情景,一名有一定从业经验的DBA,都会有自己一套故障排查的方法和步骤,此文为为大家介绍一下通过系统 性能视图(SQLServer05以上版本)来排查系统异常的基本方法 ...

  10. 亚马逊如何变成 SOA(面向服务的架构)?

    阮一峰 日期: 2016年9月10日 上一篇文章,我摘录了<程序员的呐喊>.这本书有趣的内容太多,今天再摘录一段. 1. 亚马逊公司不仅是世界最大的网络书店,还是世界最大的云服务商.它是怎 ...