正则匹配的问题

我这个正则可以匹配两种情况 ,在匹配工具里没问题

clipboard.png

clipboard.png

不过在代码里却报错了

clipboard.png
代码如下,这是怎么回事?

function getQueryString(name, source) {
            var reg    = new RegExp('(^|\\?|&|\/?)' + name + '(\/|=)(\d+|[^&]*)(\?|&|$)', 'i'),
                source = source || window.location.search,
                r      = source.match(reg)
            if (r != null) return unescape(r[3])
            return null
        }
        
        var ss = "http://m.baidu.com/beauty/tag/457?tagName=Dior/%E8%BF%AA%E5%A5%A5";
        
        
        var tt = getQueryString('keyword',ss);
        alert(escape(tt))
阅读 2k
1 个回答

用字符串构建正则表达式是转义要用双反斜杠

var reg = new RegExp('(^|\\?|&|\\/?)' + name + '(\\/|=)(\\d+|[^&]*)(\\?|&|$)', 'i'),
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进