javascript匹配含变量的正则表达式

作者:norion时间:2013年5月20日评论次数:0 条

最近在尝试着写js库,还是蛮有挑战性的,写的过程中总会遇到各式各样的问题,如果你要学好js,建议你也多练练手,现在跟大家分享一下我遇到的一个问题。

正则大家或多或少都会写吧,但是你有没有遇到这样的情况,如果正则中含有变量你怎么办?简写有反斜杠的方式,网上找了用eval方法拼接,貌似不行,最后用new RegExp(),嘿嘿成功了,分享代码~~~

貌似结论是,没有变量的时候,正则表达式可以不写成字符串的形式两边分别要有反斜杠;如果使用变量就要用new RegExp()并且里面的字符串没有那两个反斜杠。

/**
 * 对象添加class
 * @param  {String} class名称 (Optional)
 * @return {This}
*/
removeClass: function(cls){
    var me  = this,
        reg = new RegExp('(\\s|^)' + cls + '(\\s|$)');
    return this.each(function(){
        if(!cls){
            this.className = '';
        }else if( me.hasClass(cls) ){
            this.className = this.className.replace(reg, '');
        }
    });
}

标签:

上一篇: nginx平滑升级记

下一篇:基于jquery的信息提示插件

相关文章

评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注