我有以下jquery语句。我希望删除空格,如下所示。所以,如果我有一个词:
例如
#Operating/System
我想要
最终结果告诉我
#Operating\/System
。 (即用
逃脱序列)。
#Operating/System test
,那么我想展示
#Operating\/System
+逃脱
空间序列。 .replace(/ /,'')
部分不正确但.replace("/","\\/")
有效
以及我的要求。请帮忙!
$("#word" + lbl.eq(i).text().replace("/","\\/").replace(/ /,'')).hide();
答案 0 :(得分:2)
$( "#word" + lbl.eq(i).text().replace(/([ /])/g, '\\$1') ).hide();
这匹配字符串中的所有空格和斜杠(并保存组$1
中的相应字符):
/([ /])/g
替换为
'\\$1'
表示反斜杠加上组$1
中的原始字符。
"#Operating/System test".replace(/([ /])/g, '\\$1');
-->
"#Operating\/System\ test"
方面优势 - 只需要拨打replace()
。
编辑:根据OP的要求,对正则表达式/([ /])/g
进行简短说明。它分解如下:
/ # start of regex literal ( # start of match group $1 [ /] # a character class (spaces and slashes) ) # end of group $1 /g # end of regex literal + "global" modifier
如上所述与replace()
一起使用时,所有空格和斜线都会被自己替换,前面会加上反斜杠。