RegEx javascript,字符whitespace圆括号

时间:2013-01-25 16:47:32

标签: javascript regex character parentheses

我在javascript中有以下字符串:
“你好,我是OR)”
注意括号前的空格。 我想要这个 “你好,我是)” 所以基本上只删除最后一个OR。我尝试了每一个RegEx组合都没有成功,即:

string = string .replace(/OR\s\)/, " )"); //NO
string = string .replace(/OR \)/, " )");  //NO

删除圆括号只能起作用,但只要我添加OR,就没有运气

string = string .replace(/\)/, " )"); //Removes the bracket
string = string .replace(/\s\)/, " )"); //Removes the bracket and the space

我在http://regexpal.com/尝试了RegEx / OR \ s)/它运行得很好,为什么不在javascript中呢?
这感觉就像一个非常简单的问题但是2小时后我仍然迷路了 谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

string = string.replace(/(\s*OR)(?![\s\S]*OR)/,"");

请参阅Using Regex to replace last occurrence of a pattern

答案 1 :(得分:0)

这应该有效:

> s = "Hallo OR, I am OR )"
'Hallo OR, I am OR )'
> s.replace(/\bOR[\s)]+/g, ')')
'Hallo OR, I am )'