0

我想用最后的m改变字符串的颜色例如如果有一个字符串=汽车长100m它有0.5m电缆所以匹配后100m和0.5m的颜色应该是“红色”有人可以吗帮助?

4

3 回答 3

1

匹配这些数字的正则表达式可能是

/\d+(\.\d+)?m/

然后,您可以将该匹配替换为<span style='color: red;'>$0</span>您想要的其他内容。

但请注意,在正确排版的文本中,值与其单位之间至少有半个空格。

于 2013-02-13T13:09:41.823 回答
0

您需要用正则表达式替换字符串。

var str = 'the car is 100m long it has 0.5m cable';
var res = str.replace(/\s(\S*m)\s/gi,' <span class="red">$1</span> ');

小提琴:http: //jsfiddle.net/kWXQ8/1/

于 2013-02-13T13:21:25.177 回答
0

这可能会奏效:

var text = 'the car is 100m long it has 0.5m cable';
text = text.replace(/\d+(\.\d+)?m/g, function () {
    return '<span style="color:red;">' + arguments[0] + '</span>';
});
alert(text);
于 2013-02-13T13:33:33.930 回答