扫码关注官方订阅号
在Chrome42中運行如下Javascript
javascriptvar str=",,,," document.write(str.replace(",",""))
javascript
var str=",,,," document.write(str.replace(",",""))
運行結果:
javascript,,,
,,,
為什麼呢?
认证高级PHP讲师
字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。 参考:http://www.w3school.com.cn/jsref/jsref_replace.asp
String.replace()方法默认只替换第一个匹配的字符,想全局匹配可以使用正则表达式作为匹配条件。
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Glob...
因爲 str.replace 是用正則匹配的,而 v8 不支持第一個參數是字符串時指定 flag。
str.replace
所以 str.replace(',', '') 等價於 str.replace(/,/, ''),只匹配第一個。
str.replace(',', '')
str.replace(/,/, '')
str.replace(/,/g, '')
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。
参考:http://www.w3school.com.cn/jsref/jsref_replace.asp
String.replace()方法默认只替换第一个匹配的字符,想全局匹配可以使用正则表达式作为匹配条件。
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Glob...
因爲
str.replace是用正則匹配的,而 v8 不支持第一個參數是字符串時指定 flag。所以
str.replace(',', '')等價於str.replace(/,/, ''),只匹配第一個。str.replace(/,/g, '')