string=string.replace(RegExp(filter[a]+" | "+filter[a],"g"),filter[a])
出于某种原因,这不会影响空格后面的过滤器和前面有空格的过滤器。假设过滤器是“,”,它将采用第二面并且仅替换“,”而不是“,”和“,”。过滤器是用户指定的,因此我无法使用正常的正则表达式(可以正常工作),例如string=string.replace(/, | ,/g,filter[a])
有人可以向我解释为什么它不起作用以及如何使其工作?
答案 0 :(得分:0)
它对我有用:
s = 'abc, def,ghi ,klm'
a = ','
s = s.replace(RegExp(a + " | " + a, "g"), a)
"abc,def,ghi,klm"
请记住,正则表达式不会将" , "
替换为","
。您可以尝试使用它:
" ?" + filter[a] + " ?"