javascript replace 替换全部

一直以为js的replace 能替换全部需要的替换的部位,后来发现,只能替换有限的第一次出现的地方

发现js 没有replaceAll 这个方法,然后发现网友有解答

举例说明:

var str = "atetateg".replace("a",""); 则只会替换第一个a

var str = "atetateg".replace(/a/g,"");  会替换所有  /g 代表匹配全文

在举例说明:

var str = "account=201709231513338448&pay_star_type=pay_star_ggm&sign=7868&service_type=jiojiog&username=g001&password=12345678&amount=1&type=1&game_code=1&mobile=no&externalTransactionId=gfsdg&fromDate=2018-05-16+14%3A54%3A01&toDate=2018-05-16+14%3A54%3A01";

字符串中有特殊的字符 "+ " 原本是" " 和 "%3A" 字符,原本是":" ,是调用jquery的serialize方法序列化表单后得到的,jquery自动将一些需要的字符转义成url编码或其他编码

str.replace("+","").replace("%3A",";")  ,发现只替换了第一个 %3A ,而 + 字符没替换

修改后:str.replace(/\+/g," ").replace(/%3A/g,":");//得到字符串 , + 是特殊字符,需要转义符号 \

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JavaScript中的replace()方法可以用于替换字符串中的字符、字符串或正则表达式。 语法如下: ```javascript str.replace(regexp/substr,replacement) ``` 其中,regexp/substr是需要被替换的部分,replacement是替换后的内容。 示例代码: ```javascript var str = "Hello World!"; var res = str.replace("World", "JavaScript"); console.log(res); // 输出:Hello JavaScript! ``` 在上面的示例中,我们使用replace()方法将字符串中的"World"替换为"JavaScript",并将替换后的结果赋值给res变量。最终输出结果为"Hello JavaScript!"。 ### 回答2: JavaScript中的replace()方法是用来将一个字符串中的特定字符或字符模式替换为新的字符或字符模式。replace()方法接受两个参数:要替换的字符或字符模式以及替换后的字符或字符模式。 例如,我们有一个字符串var str = "Hello World! Hello JavaScript!",我们想把所有的"Hello"替换为"Hi",可以使用replace()方法来实现: var newStr = str.replace("Hello", "Hi"); console.log(newStr); // 输出: "Hi World! Hi JavaScript!" 如果我们想将所有的"Hello"都替换掉,而不只是第一个,可以使用正则表达式作为第一个参数: var newStr = str.replace(/Hello/g, "Hi"); console.log(newStr); // 输出: "Hi World! Hi JavaScript!" 上面的例子中,使用了/g标志来表示全局替换,即替换所有匹配到的字符或字符模式。 此外,replace()方法还可以接受一个函数作为第二个参数。这个函数可以根据匹配到的字符或字符模式动态生成替换后的字符或字符模式。例如: var newStr = str.replace(/Hello/g, function(match){ return match.toUpperCase(); // 将匹配到的字符转为大写 }); console.log(newStr); // 输出: "HELLO World! HELLO JavaScript!" 这里的函数接收一个参数match,表示匹配到的字符或字符模式,然后将它转化为大写返回。 总结来说,replace()方法可以实现对字符串中特定字符或字符模式的替换,可以接受字符串或正则表达式作为匹配方式,并且还可以使用函数来动态生成替换后的字符或字符模式。 ### 回答3: 在JavaScript中,replace()方法是用于将字符串中的某个字符或某个模式替换为新的字符或新的模式。该方法接收两个参数,第一个参数是要被替换的字符或模式,第二个参数是替换后的字符或模式。 replace()方法有两种常用的用法:替换一个字符或模式,或者替换多个字符或模式。 要替换一个字符或模式,可以直接调用replace()方法,并传入两个参数。例如,如果我们想将字符串中的所有逗号替换为句号,可以使用以下代码: ```javascript var str = "这是一段包含逗号的字符串,需要将逗号替换为句号。"; var newStr = str.replace(/,/g, "."); console.log(newStr); // 输出:这是一段包含逗号的字符串,需要将逗号替换为句号。 ``` 在上面的代码中,我们使用正则表达式`/,/g`作为第一个参数,表示匹配所有的逗号。然后,将逗号替换为句号。 要替换多个字符或模式,可以使用正则表达式的"或"(|)操作符。例如,如果我们想将字符串中的所有的逗号和句号替换为空格,可以使用以下代码: ```javascript var str = "这是一段包含逗号和句号的字符串,需要将逗号和句号替换为空格。"; var newStr = str.replace(/,|。/g, " "); console.log(newStr); // 输出:这是一段包含逗号和句号的字符串 需要将逗号和句号替换为空格 ``` 在上面的代码中,我们使用正则表达式`/,|。/g`作为第一个参数,表示匹配所有的逗号和句号。然后,将逗号和句号替换为空格。 需要注意的是,replace()方法在替换字符或模式时是区分大小写的。如果需要进行不区分大小写的替换,可以在正则表达式后面添加标志`i`。例如: ```javascript var str = "ABC"; var newStr = str.replace(/a/gi, "X"); console.log(newStr); // 输出:XBc ``` 在上面的代码中,`/a/gi`表示匹配所有的小写a,并且不区分大小写。然后,将小写a替换为大写X。 总的来说,replace()方法是JavaScript中用于替换字符或模式的常用方法,可以灵活地进行替换操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值