adding matching suppiort

This commit is contained in:
2023-12-11 17:58:19 -07:00
parent c9f185dea9
commit 95b913ec05
8 changed files with 206 additions and 38 deletions

View File

@@ -8,14 +8,24 @@ public record LocalQuizQuestionAnswer
public bool Correct { get; init; }
public string Text { get; init; } = string.Empty;
public string? MatchedText { get; init; }
public string HtmlText => Markdig.Markdown.ToHtml(Text);
public static LocalQuizQuestionAnswer ParseMarkdown(string input)
public static LocalQuizQuestionAnswer ParseMarkdown(string input, string questionType)
{
var isCorrect = input[0] == '*' || input[1] == '*';
string startingQuestionPattern = @"^(\*?[a-z]\))|\[\s*\]|\[\*\] ";
string startingQuestionPattern = @"^(\*?[a-z]\))|\[\s*\]|\[\*\]|\^ ";
var text = Regex.Replace(input, startingQuestionPattern, string.Empty).Trim();
if(questionType == QuestionType.MATCHING)
return new LocalQuizQuestionAnswer()
{
Correct = true,
Text = text.Split('-')[0].Trim(),
MatchedText = string.Join("", text.Split('-')[1..]).Trim(),
};
return new LocalQuizQuestionAnswer()
{
Correct = isCorrect,