http リクエストの次の accept-language ヘッダー フィールドと一致させようとしています。
var regex = /([^-]*)(?:-([^;]*))?(?:;q=([0-9].[0-9]))?/
"en-us;q=0.8".match(regex) => ["en-us;q=0.8", "en", "us", "0.8"]
"en".match(regex) => ["en", "en", undefined, undefined]
"en;q=0.8".match(regex) => ["en;q=0.8", "en;q=0.8", undefined, undefined]
問題は最後の行にあります。それは私見をもたらすはずです:
["en;q=0.8", "en", "0.8", undefined]
私の正規表現の何が問題になっていますか?