我正在根據某些條件從HTML元素中移除類。這是我的正則表達式:從正則表達式js中的匹配模式中刪除空格
elem.className = elem.className.replace(/shake|progress|done/g, '');
但這種模式有一個問題,如果有人增加了一個班說shaker
,這也將被刪除。所以我改變了模式:
elem.className = elem.className.replace(/(^|\s)shake(\s|$)|(^|\s)progress(\s|$)|(^|\s)done(\s|$)/g, '');
現在只刪除,如果整個單詞相匹配。但現在它消除了單詞周圍的空間。我不知道如何解決這個問題。請幫我解決一下這個。
這不是正則表達式的工作。與['classList'](https://developer.mozilla.org/en-US/docs/Web/API/Element/classList)互動。 –
你能舉出一個前後準確的例子,意思是應用正則表達式之前和之後的字符串 –
德里克有正確的答案;但是將整個單詞與正則表達式匹配的技術無論如何都值得一提:請看[單詞邊界錨點](http://www.regular-expressions.info/wordboundaries.html)。 –