]> git.phdru.name Git - phdru.name/cgi-bin/blog-ru/search-tags.git/commitdiff
Feat(parser): Allow uppercase Latin letters and Russian letters
authorOleg Broytman <phd@phdru.name>
Sat, 15 Jun 2024 23:36:55 +0000 (02:36 +0300)
committerOleg Broytman <phd@phdru.name>
Sat, 15 Jun 2024 23:36:55 +0000 (02:36 +0300)
parser/grammar.ebnf
parser/test_parser.py

index 3be4d166e0ed7eac1643b7e0176d35e2e75f7d8a..ccfe6eb0de71e334572ccce758e7254a33e5dfca 100644 (file)
@@ -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
index cf053b85f58393a93eb7e29ca676b8fd7dc1c070..6027ce587289d7e3edee6044a82fec957943dae9 100755 (executable)
@@ -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(