将string替换为另一个字符串

时间:2014-03-03 10:36:30

标签: javascript regex str-replace

我有一个字符串,其中一部分如下所示:

"..devices=233.423.423.553&..."

我想用“111.111”之类的不同值替换“devices =”的值,所以它看起来像:

"..devices=111.111&..."

我想我可以用某种表达式做到这一点,因为我需要内联。任何技巧都会受到赞赏..

3 个答案:

答案 0 :(得分:2)

当然..只需替换为您要替换的字符串:

var str = '..devices=233.423.423.553&...';
str = str.replace(/devices=[0-9.]+/g, 'devices=111.111');

console.log(str); //..devices=111.111&... 

<强>尸检:

  • devices= 文字字符串devices=
  • [0-9.]+ 数字09或字面字符.匹配1至无穷大时间
  • /g 表示“全球”。将替换任何出现而不仅仅是第一个

Regular expression visualization

答案 1 :(得分:0)

试试:

 "..devices=233.423.423.553&...".replace(/(devices)=(?:\d+(\.\d+)*)/, '$1=111.111')

答案 2 :(得分:0)

我是一个相对的菜鸟,所以请原谅我,如果这是完全无效的,但是怎么样:

var myStr="..devices=233.423.423.553&..."
var something=myStr.substring((myStr.indexOf("=")+1),(myStr.indexOf("&")));
myStr.replace(something,"111.111.111");

使用正则表达式看起来更酷。