From a3fafba667f9521a2e9c270cfa5480b51d6136ed Mon Sep 17 00:00:00 2001 From: benne238 Date: Wed, 30 Jun 2021 16:46:53 -0400 Subject: [PATCH] modified the reply to user rule to expect only a single line delimiter and made the skipTo look for delimiters at the begining of the line --- src/webqueue2api/parser/parser.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/webqueue2api/parser/parser.py b/src/webqueue2api/parser/parser.py index 3683dc7..baa4c2f 100644 --- a/src/webqueue2api/parser/parser.py +++ b/src/webqueue2api/parser/parser.py @@ -235,15 +235,16 @@ def error_handler(original_string, match_start_index, tokens): ).leaveWhitespace().setParseAction(parse_section_by_type("reply_from_user")) reply_to_user_rule = ( + pp.LineStart() + pp.Literal(reply_to_user_delimiter).suppress() + pp.Word(pp.alphanums).setResultsName("by")+ pp.Literal(" at: ").suppress() + - pp.SkipTo(action_end_delimiter + pp.LineEnd()).setResultsName("datetime") + + pp.Word(pp.nums + "/-: ").setResultsName("datetime") + (pp.Literal(action_end_delimiter) + pp.LineEnd()).suppress() + pp.Group( pp.SkipTo( pp.Literal(reply_from_user_start_delimiter) - | pp.Literal(action_start_delimiter) + | (pp.LineStart() + pp.Literal(action_start_delimiter)) ) | pp.SkipTo(pp.StringEnd(), include=True) ).setResultsName("content") ).leaveWhitespace().setParseAction(parse_section_by_type("reply_to_user"))