0

javascriptに次の文字列があります:
"Hallo OR、I am OR)"
括弧の前のスペースに注意してください。
この「HalloOR、I am)」が欲しい
ので、基本的に最後のORを削除します。私はすべての正規表現の組み合わせを試しましたが、成功しませんでした。

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時間経ってもまだ迷っています。
ご協力いただきありがとうございます。

4

2 に答える 2

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

パターンの最後の出現を置き換えるための正規表現の使用を参照してください

于 2013-01-25T17:55:14.260 に答える
0

これはうまくいくはずです:

> s = "Hallo OR, I am OR )"
'Hallo OR, I am OR )'
> s.replace(/\bOR[\s)]+/g, ')')
'Hallo OR, I am )'
于 2013-01-25T16:51:53.777 に答える