From: Oleg Broytman Date: Sat, 15 Jun 2024 23:36:55 +0000 (+0300) Subject: Feat(parser): Allow uppercase Latin letters and Russian letters X-Git-Url: https://git.phdru.name/?a=commitdiff_plain;h=117a079203b0b2edae63b654dca5decfc8da9c5c;hp=ca6730a16664f67f3317766a35d52de7b3c3e870;p=phdru.name%2Fcgi-bin%2Fblog-ru%2Fsearch-tags.git Feat(parser): Allow uppercase Latin letters and Russian letters --- diff --git a/parser/grammar.ebnf b/parser/grammar.ebnf index 3be4d16..ccfe6eb 100644 --- a/parser/grammar.ebnf +++ b/parser/grammar.ebnf @@ -36,7 +36,7 @@ not_expression: not and_sub_expression expression_parens : "(" expression ")" -name : /[a-z][a-z0-9_]+/ +name : /[A-Za-zá-ñÁ-Ñ][A-Za-zá-ñÁ-Ñ0-9_]+/ ?and : and_op | and_op and_op diff --git a/parser/test_parser.py b/parser/test_parser.py index cf053b8..6027ce5 100755 --- a/parser/test_parser.py +++ b/parser/test_parser.py @@ -13,7 +13,7 @@ class TestParser(unittest.TestCase): self.assertEqual(self._parse('xxx'), ('NAME', 'xxx')) def test_03_bad_tag(self): - self.assertRaises(LexError, self._parse, 'XXX') + self.assertRaises(LexError, self._parse, '0XXX') def test_04_expression(self): self.assertEqual(