This commit is contained in:
St.Huang 2018-08-30 15:02:22 +08:00
parent fd30a5c384
commit 5931fc63ee
2 changed files with 16 additions and 6 deletions

View File

@ -262,12 +262,12 @@ def query_flds(note, fileds=None):
return result, -1 if len(tasks) == 0 else success_num, missed_css return result, -1 if len(tasks) == 0 else success_num, missed_css
def cloze_deletion(text, term): def cloze_deletion(text, cloze):
'''create cloze deletion text''' '''create cloze deletion text'''
text = text.replace('', '\'') text = text.replace('', '\'')
result = text result = text
offset = 0 offset = 0
term = _stemmer.stemWord(term).lower() term = _stemmer.stemWord(cloze).lower()
terms = re.finditer(r"\b[\w'-]*\b", text) terms = re.finditer(r"\b[\w'-]*\b", text)
tags = re.finditer(r"<[^>]+>", text) tags = re.finditer(r"<[^>]+>", text)
@ -283,7 +283,12 @@ def cloze_deletion(text, term):
continue continue
word = text[s:e] word = text[s:e]
if _stemmer.stemWord(word).lower() == term: if _stemmer.stemWord(word).lower() == term:
result = result[:s+offset] + "{{c1::" + word + "}}" + result[e+offset:] l = len(cloze)
w = word
if w[:l].lower() == cloze.lower():
e = s + l
w = word[:l]
result = result[:s+offset] + "{{c1::" + w + "}}" + result[e+offset:]
offset += 8 offset += 8
return result return result

View File

@ -263,12 +263,12 @@ def query_flds(note, fileds=None):
return result, -1 if len(tasks) == 0 else success_num, missed_css return result, -1 if len(tasks) == 0 else success_num, missed_css
def cloze_deletion(text, term): def cloze_deletion(text, cloze):
'''create cloze deletion text''' '''create cloze deletion text'''
text = text.replace('', '\'') text = text.replace('', '\'')
result = text result = text
offset = 0 offset = 0
term = _stemmer.stemWord(term).lower() term = _stemmer.stemWord(cloze).lower()
terms = re.finditer(r"\b[\w'-]*\b", text) terms = re.finditer(r"\b[\w'-]*\b", text)
tags = re.finditer(r"<[^>]+>", text) tags = re.finditer(r"<[^>]+>", text)
@ -284,7 +284,12 @@ def cloze_deletion(text, term):
continue continue
word = text[s:e] word = text[s:e]
if _stemmer.stemWord(word).lower() == term: if _stemmer.stemWord(word).lower() == term:
result = result[:s+offset] + "{{c1::" + word + "}}" + result[e+offset:] l = len(cloze)
w = word
if w[:l].lower() == cloze.lower():
e = s + l
w = word[:l]
result = result[:s+offset] + "{{c1::" + w + "}}" + result[e+offset:]
offset += 8 offset += 8
return result return result