2011-11-13 133 views

回答

2

那是因爲你的正則表達式:

/&[^;]+;/g 

是尋找:

&  an ampersand, followed by 
[^;]+ one or more characters that are not semicolons, followed by 
;  a semicolon 

所以 >都匹配的模式。第二個/後面的g表示進行全局替換 - 如果您將其關閉,則只會替換第一個匹配。

您需要:

.replace(/>/g, '-') 

這改變了>所有實例-而忽略了其他一切。

如果你特別想更換>只有當它是由非打破空間有幾種方法可以做到這一點,這是最簡單的可能是環繞:

.replace(/ > /g, ' - ') 
0
replace(/>/g, "-") 

你不用-代替>,則代替以&開頭並以;結束的任何內容。

如果只有一處出現,則不需要g修飾符。