我需要在' - '出现3次后才更换字符串。 有人可以给我一个模式吗?
ex:xxyy-xxyy-xxyy-xxyy其中xx可以是多个字符或数字,我需要替换最后一组字符。
finalString = String.replace(/xx$/m, "z")
这不起作用,因为我不知道最后一组字符。
提前致谢。
答案 0 :(得分:1)
你可以这样做:
var s = 'xxyy-xxyy-xxyy-xxyy';
var r = s.replace(/^((?:[^-]*-){3}).*/, '$1foo');
//=> xxyy-xxyy-xxyy-foo
答案 1 :(得分:0)
怎么样:
finalString = String.replace(/xx([^-]+)$/m, "z$1")
答案 2 :(得分:0)
这是我从anubhava's
回答的内容,希望这是您所需要的
var s = 'xxyy-xxyy-xxyy-xxyy';
var r = s.replace(/^((?:[^-]*-){3})xx*/, '$1foo');