0

二重括弧内の部分文字列を空の部分文字列に置き換える必要があります。私が使う:
source = source.replaceAll("\(.+?\)", "");

かっこ内の部分文字列は削除されます。代わりに、二重括弧内の部分文字列を試してみると、部分文字列全体が削除されますが、最後の')'は残ります。
ここで何が問題になっていますか?

前もって感謝します。

4

2 に答える 2

1

+?一致する文字数が可能な限り少なくなることを意味します。つまり、括弧で囲まれた内側のステートメントを取得します。

試す:

source = source.replaceAll("\(?\(.+?\)\)?", "");

正規表現を\(?とでラップしまし\)?た。

于 2011-09-21T20:38:32.700 に答える
1

source.replaceAll("\(\([^\(]*\)\)", "");

(未検証)

于 2011-09-21T20:36:28.693 に答える