          self.assertEqual([('de', 1.0)], p('de'))
          self.assertEqual([('en-AU', 1.0)], p('en-AU'))
          self.assertEqual([('*', 1.0)], p('*;q=1.00'))
          self.assertEqual([('en-AU', 0.123)], p('en-AU;q=0.123'))
          self.assertEqual([('en-au', 0.5)], p('en-au;q=0.5'))
          self.assertEqual([('en-au', 1.0)], p('en-au;q=1.0'))
 
</s> remove         ([A-Za-z]{1,8}(?:-[A-Za-z]{1,8})*|\*)         # "en", "en-au", "x-y-z", "*"
 </s> add         ([A-Za-z]{1,8}(?:-[A-Za-z0-9]{1,8})*|\*)      # "en", "en-au", "x-y-z", "es-419", "*" </s> remove # Format of Accept-Language header values. From RFC 2616, section 14.4 and 3.9.
 </s> add # Format of Accept-Language header values. From RFC 2616, section 14.4 and 3.9
# and RFC 3066, section 2.1
        self.assertEqual([('es-419', 1.0)], p('es-419'))
          self.assertEqual([('de', 1.0)], p('de'))
          self.assertEqual([('en-AU', 1.0)], p('en-AU'))
        self.assertEqual([('es-419', 1.0)], p('es-419'))
          self.assertEqual([('*', 1.0)], p('*;q=1.00'))
          self.assertEqual([('en-AU', 0.123)], p('en-AU;q=0.123'))
          self.assertEqual([('en-au', 0.5)], p('en-au;q=0.5'))
          self.assertEqual([('en-au', 1.0)], p('en-au;q=1.0'))
keep add keep keep keep keep
 Fixed #19142 -- Language codes can include numbers (RFC 3066). 
tests/regressiontests/i18n/tests.py