我正在尝试用空格替换字符串中的所有短划线,除非短划线位于短语"not-replace"
中。所以整个字符串就像
var str = "change-these-dashes-but-not-replace-that";
所以我最终可能会“改变这些破折号而不是替换那个”
但是我提出的并不是与我不想替换它的短语中的短划线相匹配。我该如何修改它?:
.match(/-(^not-replace)/gi);
答案 0 :(得分:2)
str.replace(/not-replace/, 'notXXXreplace').replace(/-/, ' ').replace(/notXXXreplace/, 'not-replace');
即。首先通过将其更改为不包含短划线的内容来保护not-replace
。然后替换所有破折号,并将not-replace
放回不太可能的字符串。
答案 1 :(得分:2)