search_query.ebscohost.parser
EBSCO query parser.
Classes
| 
 | Parser for EBSCO (list format) queries. | 
| 
 | Parser for EBSCO queries. | 
- class search_query.ebscohost.parser.EBSCOListParser(query_list: str, field_general: str = '', ignore_failing_linter: bool = False)
- Bases: - QueryListParser- Parser for EBSCO (list format) queries. - LIST_ITEM_REFERENCE = re.compile('S\\d+|\\#\\d+')
 
- class search_query.ebscohost.parser.EBSCOParser(query_str: str, *, field_general: str = '', offset: dict | None = None, original_str: str | None = None, silent: bool = False, ignore_failing_linter: bool = False)
- Bases: - QueryStringParser- Parser for EBSCO queries. - FIELD_REGEX = re.compile('\\b([A-Z]{2})\\b')
 - LOGIC_OPERATOR_REGEX = re.compile('\\b(AND|OR|NOT)\\b', re.IGNORECASE)
 - OPERATOR_REGEX: re.Pattern = re.compile('\\b(AND|OR|NOT)\\b|(N|W)\\d+|(NEAR|WITHIN)/\\d+')
 - PARENTHESIS_REGEX = re.compile('[\\(\\)]')
 - PROXIMITY_OPERATOR_REGEX = re.compile('(N|W)\\d+|(NEAR|WITHIN)/\\d+', re.IGNORECASE)
 - TERM_REGEX = re.compile('\\"[^\\"]*\\"|\\*?\\b[^()\\s]+')
 - combine_subsequent_tokens() None
- Combine subsequent tokens based on specific conditions. 
 - fix_ambiguous_tokens() None
- Fix ambiguous tokens that could be misinterpreted as a search field. 
 - parse_query_tree(tokens: list[Token], field_context: SearchField | None = None) Query
- Top-down predictive parser for query tree. 
 - pattern = re.compile('[\\(\\)]|\\b(AND|OR|NOT)\\b|(N|W)\\d+|(NEAR|WITHIN)/\\d+|\\b([A-Z]{2})\\b|\\"[^\\"]*\\"|\\*?\\b[^()\\s]+')
 - tokenize() None
- Tokenize the query_str.