带有通配符/正则表达式的Javascript str.replace?

时间:2014-03-05 22:23:34

标签: javascript regex

如何替换以下foo部分?有没有办法使用通配符?

var str = "font-family:foo";
var res = str.replace("font-family:/*/","font-family:Times New Roman");

所以font-family: whatever替换为font-family: Times New Roman

2 个答案:

答案 0 :(得分:5)

你可以试试这个:

var res = str.replace(/font-family:[^;}]*/g, "font-family:Times New Roman;");

正则表达式模式必须用/分隔。 g标志用于替换找到的所有子字符串。

[^;}]*表示所有不是;}零次或更多次。

答案 1 :(得分:1)

这很简单,你可以这样做:

正则表达式

(font-family:)\w+

替换字符串

$1replacement

在线演示

http://regex101.com/r/dQ3uK4