我想将所有由 包围的-字符串替换为由 包围的字符串~,但如果该字符串再次由 包围,则不是*。
例如,这个字符串...
The -quick- *brown -f-ox* jumps.
……应该变成……
The ~quick~ *brown -f-ox* jumps.
我们看到-只有在它不在的时候才会被替换*<here>*。
我现在的javascript-regex(不管它是否被包围*):
var message = source.replace(/-(.[^-]+?)-/g, "~$1~");
编辑:请注意,可能存在奇数个*s。