javascript - 请问怎么写a=1&b=2转换成a:1,b:2的正则?
PHP中文网
PHP中文网 2017-04-11 11:25:55
[JavaScript讨论组]

str.replace(reg,"");一个正则应该不能完成吧?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(4)
PHP中文网
"a=1&b=2".replace(/[=&]/g,function(match) {
    return match == '=' ? ":" : ","
});
PHP中文网
'a=1&b=2'.replace(/=|&/g, v => {
  if (v === '=') return ':' 
  else if (v === '&') return ','
})
阿神
"a=1&b=2".replace(/(\w+)\s*=\s*(\w+)\s*(\&)?/g, "$1:$2,"); 

==>a:1,b:2,一句话解决,缺点是多了一个,,可以这样处理

var a="a=1&b=2".replace(/(\w+)\s*=\s*(\w+)\s*(\&)?/g, "$1:$2,");
a=a.substring(0,a.length-1)

或者这样最好了:

var a="a=1&b=2";
a.replace(/(\w+)\s*=\s*(\w+)\s*(\&)?/g, "$1:$2,").substring(0,a.length)
PHP中文网
var str='a=1&b=2';
str.replace(/([^&=]+)=([^&=])(&)?/g,function(str,$1,$2,$3){return $1+':'+$2+($3?',':'')})
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号