この正規表現は、要素に不透明度がある場合はその値をキャプチャすることになっていますが、それが何をしているのか少し混乱しています。
function getOpacity(elem) {
var filter = elem.style.filter;
return filter ?
filter.indexOf("opacity=") >= 0 ? (parseFloat(filter.match(/opacity=([^)]+)/)[1]) / 100) + "" : "" : elem.style.opacity;
}
ここで捕獲が行われているようです([^)]+)
。そして、その中の 1 つ以上の右括弧は無視する必要があります[^)]+
。私はこれを間違っているに違いないと思います。1 つ以上の右括弧が無視されるのは? それは意味がありません。
いずれにせよ、最後+
に言及した後に . があるため、正規表現が終了したよう/
です。これは正規表現の終了を示していますか? その直後にキャプチャーの呼び出しがあり[1]
ます。だから多分それは実際には終わっていません..?
ここで何が起こっているのかを正確に理解するための助けをいただければ幸いです。javascript忍者本の正規表現の礼儀