1

私のオプションは次のようになります。

<option value="80">a1, a2, a3, a4, a5 (80)</option>

このコードで:

str_split = str.split(',');

私はこれを受け取ります:

a1 a2 a3 a4 a5 (80)

しかし、私はこれを取得するために中括弧でIDを削除したい:

a1 a2 a3 a4 a5

IDは、"(8)"または"(20)"または"(100)"などのように変化する可能性があります..


で試してみました

str_replace = str.replace(/[()]/g, "");

しかし、それは私にこの結果を与えます:

a1 a2 a3 a4 a5 80

それ、どうやったら出来るの?

編集 :

文字列からのIDを持つ最後の中括弧でこれを行うことは可能ですか?

それをテストしたところ、私のオプションがこのように見えるときに問題が発生しました

<option value="80">a1(12), a2(test), a3(333), a4(xx), a5(34) (80)</option>

これ欲しい

a1(12) a2(test) a3(333) a4(xx) a5(34)
4

2 に答える 2

6

使用できます

var str_replace = str.replace(/\([^)]+\)$/,'')

使い方 :

  • \(: エスケープされた左括弧
  • [^)]: 閉じ括弧ではありません
  • +: 少なくとも一度は
  • \): 閉じ括弧、エスケープ
  • $: 文字列の終わり
于 2013-07-27T19:23:53.410 に答える
1

これを行うには、.split()との両方を使用できます。.replace()

  1. 使用.split():

    var str_split = str.split(' (');
    var str_replace = str_split[0];
    
  2. 使用.replace():

    var str_replace = str.replace(/ \([0-9]+\)/, "");
    

ここでjsFiddle

于 2013-07-27T19:26:41.857 に答える