2011-12-07 6 views

答えて

2

はこれを試してみてください。この種の抽出を行う場合は、lazy quantifierを使用してください。あなたは、ブラケットの二組持っていたそうでない場合:

[asdfjhasdf][asdfafas]をあなただけの最後の]

+1

おかげでたくさん。これは間違いなく動作します! – sammiwei

+0

@sammiweiよろしくお願いします。 – FailedDev

1

\[(.*)\] \後と[例えば前に使用スペースをいけない、素晴らしい作品。 \ [これはそのようには機能しないためです。 []の内容は、後方参照$1によって捕獲される

var myregexp = /\[(.*?)\]/; 
var match = myregexp.exec(subject); 
if (match != null) { 
    result = match[1]; 
} 

1

2つの問題への最初の[からそれらの一つになるだろう。まず、正規表現を//にラップする必要があります。第2に、それを?に移動します。

http://jsfiddle.net/ePjKM/1

var result = str.match(/\[.*?\]/); 
関連する問題