如何在替换语句中转义连字符
var lvs = "ui-btn ui-btn-up-XXX ui-li ui-li-has-icon ui-btn-hover-e ui-btn-up-ZZZ" ;
var lvs = lvs.replace(/\bui-btn-up-[^\b]*?\b/gi , "" ) ;
alert( lvs);
我尝试了许多正斜杠和反斜杠的变体
如何在替换语句中转义连字符
var lvs = "ui-btn ui-btn-up-XXX ui-li ui-li-has-icon ui-btn-hover-e ui-btn-up-ZZZ" ;
var lvs = lvs.replace(/\bui-btn-up-[^\b]*?\b/gi , "" ) ;
alert( lvs);
我尝试了许多正斜杠和反斜杠的变体
我认为您使用断字符 ( \b
) 使其过于复杂。这对你想做的事情不起作用吗?
var lvs = lvs.replace(/ui-btn-up(-\w+)?/gi, "");
这也假设您要删除ui-btn-up
. 如果没有,那么使用:
var lvs = lvs.replace(/ui-btn-up-\w+/gi, "");
你想这样做吗:
var lvs = lvs.replace(/\sui-btn-up-\S+\s*?/gi , "" ) ;
这对我来说没问题:-
lvs = "ui-btn ui-btn-up-XXX ui-li ui-li-has-icon ui-btn-hover-e ui-btn-up-ZZZ" ;
var lvs = lvs.replace(/\bui-btn-up-\w*\s*/gi , "" ) ;
alert( lvs);
你不必逃避-
。
'sonia-b-cat'.replace(/a-b-c/, '123') // 'sonia123at'
只有当它在字符类中时,您才需要使用反斜杠对其进行转义
'z-z'.replace(/[abc\-]/, '123') // 'z123z'