javascript - 为什么使用js的.replace()方法时遇到的问题?
高洛峰
高洛峰 2017-04-10 15:24:34
[JavaScript讨论组]



第一个中得到'a','b,第二个得到的是 John Doe
这些js中的$1,$2代表什么意思?第二个加一个逗号就把一个正则变两个了吗?
不知是怎么实现的?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
天蓬老师

这些js中的$1,$2代表什么意思?

$1,$2 指的是对括号的匹配内容的反向引用,你可以简单理解()里面的是子表达式,$n就是第n个括号里面的匹配内容

第二个加一个逗号就把一个正则变两个了吗?

起作用的是括号,而不是逗号,逗号就是一个普通字符

不知是怎么实现的?

第一个表达式的原因在于g,就是会将匹配全部符合规则的内容
也就是说"a"符合()子表达式,"b"也符合()子表达式,其实是执行了2次replace
第二个表达式是
Doe符合第一个()子表达式,John符合第二个()子表达式,其实是执行了1次replace

更多可以看看http://www.cnblogs.com/rubylouvre/archive/2010/03/09/1681222.html

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

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