improved ssl lexer

This commit is contained in:
Stefan Strobel 2025-04-13 22:12:14 +02:00
parent 8a676c096a
commit 3ef9ea3a3b
2 changed files with 6 additions and 6 deletions

View File

@ -29,7 +29,7 @@ class ComponentView(LoginRequiredMixin, BaseTemplateMixin, TemplateView):
error_string = '' error_string = ''
if not search_string: if not search_string:
return queryset return queryset, error_string
search_parser = ShimattaSearchLanguage() search_parser = ShimattaSearchLanguage()
query, errors = search_parser.search_for_components(search_string) query, errors = search_parser.search_for_components(search_string)

View File

@ -13,7 +13,7 @@ class ShimattaSearchConstants():
PREFIX_DICT.update({k: v for k, v in EngineeringNumberConverter.it_prefixes if k}) PREFIX_DICT.update({k: v for k, v in EngineeringNumberConverter.it_prefixes if k})
PREFIX_RULE = r'(' + r'|'.join([rf'(?:{p})' for p in PREFIX_DICT.keys()]) + r')?' PREFIX_RULE = r'(' + r'|'.join([rf'(?:{p})' for p in PREFIX_DICT.keys()]) + r')?'
TEXTUAL_REGEX = r'(?:([^"\s]+))|(?:"([^"]*)")' TEXTUAL_REGEX = r'(?:([^"><=!&\|\(\)\s]+))|(?:"([^"]*)")'
VALUE_REGEX = rf'(\-?\d+(?:\.\d+)?){PREFIX_RULE}' VALUE_REGEX = rf'(\-?\d+(?:\.\d+)?){PREFIX_RULE}'
TEXTUAL_PATTERN = re.compile(TEXTUAL_REGEX) TEXTUAL_PATTERN = re.compile(TEXTUAL_REGEX)
@ -30,14 +30,14 @@ class ShimattaSearchLexer(Lexer):
ignore = ' \t\n' ignore = ' \t\n'
# Regular expression rules for simple tokens # Regular expression rules for simple tokens
GT = r'>'
LT = r'<'
GTE = r'>=' GTE = r'>='
LTE = r'<=' LTE = r'<='
GT = r'>'
LT = r'<'
EQ = r'==' EQ = r'=='
NEQ = r'!=' NEQ = r'!='
AND = r'&' AND = r'(?:&{1,2})|(?:and)|(?:AND)'
OR = r'\|' OR = r'(?:\|{1,2})|(?:or)|(?:OR)'
LPAREN = r'\(' LPAREN = r'\('
RPAREN = r'\)' RPAREN = r'\)'