0

我有以下字符串值。

var stringVal = [4|4.6]^Size{1}~[6];

我想在第一次^出现之前替换所有内容,[1|5]我该怎么做?

提前致谢。

4

1 回答 1

5

一个简单的正则表达式就可以了:

var stringVal = '[4|4.6]^Size{1}~[6]';
stringVal.replace(/^.*?\^/, '[1|5]^');
#=> "[1|5]^Size{1}~[6]"

正则表达式解释:

 ^   start of string
 .   any character
 *?  repeat >= 0 times, but match as less characters as possible (non-greedy)
 \^  match '^' (a simple `^` matches the start of the string, so we need to escape it

另一种更快的方法,适用于这种情况:

'[1|5]' + stringVal.substr(stringVal.indexOf('^'))
于 2013-05-08T10:48:56.370 回答