如果我错了,请纠正我,但我相信正则表达式({|})传统上匹配{或}。但是,当我有一个这样的字符串:“{hello i is a string}”并且我称之为函数:
var album = $(song).data('album').replace(/({|})/, '', 'g');
只有{被替换,留下尾随}。是什么赋予了?
答案 0 :(得分:2)
我相信如果第一个参数是regexp对象,则忽略非标准flags
参数。根据{{3}}:
To perform a global search and replace, either include the g switch in the
regular expression or if the first parameter is a string, include g in the
flags parameter.
对于您的示例,以下工作:
> "{hello}".replace(/({|})/g, '')
> "hello"