btstudy.com 으로 오세요. 수능/내신 변형, 퀴즈를 무료로 공개합니다.

블루티쳐학원 | 등록번호: 762-94-00693 | 중고등 영어 | 수강료: 30(중등), 33(고등), 3+4(특강)

THE BLUET

728x90
반응형

영어하는 임희재의 

문법공식 공개


def forgc(a):

#우선순위

#a = re.sub(r'\b(?!is|are|was|were|be)(\w+) (compared) (to)\b', '\\1 [피전] [\\2ing / 정답\\2$] \\3', a)

pj=r'\b(formed|compared|originated|found|presented|breathed|generated|found|engaged|swept|framed|related|associated|based|used|filled|involved|needed)\b'

a = re.sub(r'\b(?!is|are|was|were|been|be|has|have|had|as|that|not|when|haven.t|they|it|she|he|I|you|we)(\w+)\b '+pj+' '+r'(\w+ly) ('+prep1+r'|to\b)','\\1 [피-전] #\\2 \\3 *\\4$',a)

a = re.sub(r'\b(?!it|are|was|were|been|be|has|have|had|as|that|not|when|haven.t|they|it|she|he|I|you|we|\w+ly)(\w+)\b '+pj+r' ('+prep1+r'|to)\b','\\1 [피전] [\\2ing /정답\\2$] \\3',a)

a = re.sub(r'\b(would) (if)\b','[우드이프-생략] \\1 \\2',a)

a = re.sub(r'\b(?!it|are|was|were|been|be|has|have|had|as|that|not|when|haven.t|they|it|she|he|I|you|we)(\w+)\b '+adj1+r' ('+prep1+r'|to)\b','\\1 [명_형전] [정답\\2$ / is \\2] \\3',a)

a = re.sub(be1+' '+adj1+r' (of)\b','[비형옵] \\1 \\2 \\3',a)

a = re.sub(r'(?i)\b(?!the|a|an|is|are|was|were|be|being|been)(\S+) ((?:last|belong|referr|refer|reside|result|interfere|spied|vie|ranging|range|vary|vari|live|living|arise|arising|rise|rising|rose|correspond|relat|suffer|adapt|interfer)(?:es|s|ed|e|d|ing)?)'+' '+r'(with|at|on|in|for|by|from|to|off|with)\b','\\1 [동전] [\\2 / 정답\\2 \\3$]',a)

a = re.sub(r'\b(?i)(been)'+' '+r'(had)\b','[빈핻] *\\1 *\\2$',a)

if re.findall(r'\bhighly\b',a):

a = re.sub(r'\b(high)ly\b','[하이] [\\1 / 정답\\1ly$',a)

else:

a = re.sub(r'\b(high)\b','[하이] [정답\\1$ / \\1ly]',a)

a = re.sub(r'^'+ving1+' '+r'(.*? \w+s) is\b','\\1 \\4 [먼동사] [정답is$ / are]',a)

a = re.sub(r'^(What is necessary) '+r'(.*?) are\b','\\1 \\2 [먼동사] [is / 정답are$]',a)

a = re.sub(to[1]+' '+r'(have) '+pp[1],'[투해피] \\1 [\\3원형 / 정답\\2 \\3$]',a)

a = re.sub(r'\b(?i)(as) '+adj1+r' (as)\b','[애형애] \\1 [정답\\2$ / \\2ly] \\3',a)

a = re.sub(r'\b(?i)(as) '+pp[1]+r' (as)\b','[애피애] *\\1 #\\2 *\\3$',a)

a = re.sub(r'\b(?i)(as) '+r'(\w+)ly (as)\b','[애부애] \\1 [\\2 / 정답\\2ly$] \\3',a)

a = re.sub(r'\b(difficulty) '+ving1,'[어렵다고잉잉] #\\1 #\\2$',a)

a = re.sub(had[1]+' '+pp[1],'[핻피] [have \\2 / 정답\\1 \\2$]',a)

#a = re.sub(had[1]+' '+w02[1]+r'(been) (?!\w+ed|left)(\w+)\b','[핻피] *\\1 \\2#\\3$ \\4',a)

if re.findall(be1+' '+w02[1]+beening[1]+' '+pp[1],a):

a = re.sub(be1+' '+w02[1]+beening[1]+' '+pp[1],'[비빙피] [\\1 \\2\\4ing / 정답\\1 \\2\\3 \\4$]',a)

elif re.findall(r'\bbeing '+pp[1],a):

a = re.sub(r'\b(being)'+' '+pp[1],'[빙피] [having \\2 / 정답\\1 \\2$]',a)

else:

a = re.sub(r'(?i)(having) '+pp[1],'[해빙피] [정답\\1 \\2$ / being \\2]',a)

a = re.sub(have1+' '+w02[1]+beening[1]+' '+r'(\w+ly) '+ving1,'[햅빈~잉] *\\1 \\2*\\3 \\4 #\\5$',a)

a = re.sub(have1+' '+w02[1]+beening[1]+' '+ving1,'[햅빈잉] [\\1 \\2\\3  \\4ed / 정답\\1 \\2\\3 \\4$]',a)

a = re.sub(r'\b(\w+\Wd)\b'+' '+w02[1]+beening[1]+' '+ving1,'[햅빈잉] \\1 [\\2\\3 \\4ed / 정답\\2\\3 \\4$]',a)

a = re.sub(have1+' '+w02[1]+beening[1]+' '+pp[1],'[햅빈피] [\\1 \\2\\4 / 정답\\1 \\2\\3 \\4$]',a)

a = re.sub(have1+' '+beening[1]+' '+w12[1]+pp[1],'[햅빈피] [\\1 \\2 \\3\\4ing / 정답\\1 \\2 \\3\\4$]',a)

a = re.sub(be1+r' (\w+ly \w+ly) '+pp[1],'[비_부부_피] \\1 \\2 \\3',a)

a = re.sub(be1+' '+w02[1]+pp[1]+' '+to[1],'[비피투] \\1 \\2[\\3ing/ 정답\\3$] to',a)

a = re.sub(be1+' '+w02[1]+pp[1]+' '+that1,'[비피댓] \\1 \\2\\3 [정답\\4$ / what]',a)

a = re.sub(be1+' '+w02[1]+pp[1]+' '+adj1,'[비피형] *\\1 \\2#\\3 #\\4$',a)

a = re.sub(r'\b(must|may|should|cannot) '+w02[1]+have1+' '+r'(been|'+pp[1]+r')','[조해피] [*\\1$] \\2 \\3 \\4',a)

a = re.sub(r'\b(would|might|could) '+w02[1]+have1+' '+r'(been|'+pp[1]+r')','[가정조해피] *\\1 \\2 *\\3 #\\4$',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+ving1,'\\1\\2 [콤잉] [\\4 / 정답\\3$]',a)

#a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) (and|or|but) '+ving1,'\\1\\2 \\3[콤앤잉] [정답\\4$ / \\5ed]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\S+\,) '+it1,'\\1\\2 [콤잇] [정답\\3$ / which]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\S+\,) (its)\b','\\1\\2 [콤잇츠] *\\3$',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) (possibly|thereby) '+ving1,'\\1\\2 \\3 [콤부잉] [정답\\4$ / \\4ed]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+pp[1],'\\1\\2 [콤피] [\\3ing / 정답\\3$]',a)

a = re.sub(', '+r'(is)\b',', [콤비] [정답is$ / are / being]',a)

a = re.sub(', '+r'(are)\b',', [콤비] [is / 정답are$ / being]',a)

a = re.sub(', '+r'(was)\b',', [콤비] [정답was$ / were / being]',a)

a = re.sub(', '+r'(was|were)\b',', [콤비] [was / 정답were$ / being]',a)

a = re.sub(', '+r'(being)\b',', [콤빙] [is / are / 정답being$]',a)

a = re.sub(', '+r'(be)\b',', [콤비] [정답be$ / being]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+rv1,'\\1\\2 [콤동] [정답\\3$ / \\3ing]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+verbs[1],'\\1\\2 [콤동s] [\\3 / 정답\\3\\4$]',a)

a = re.sub(', '+r'(of) (?!course)(\w+)\b',', [콤옵] [정답\\1$ / in] \\2',a)

a = re.sub(', '+r'(have|has|had)\b',', [콤햅] [정답\\1$ / \\1ing]',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+to[1]+r' (?!their|different)(\w+)\b','\\1\\2 [콤투] *\\3 *\\4$',a)

a = re.sub(r'(^(?:\S+ ){5,})(\w+\,) '+hv1,'\\1\\2 [콤조] *\\3$',a)

a = re.sub(r', '+r'(who)\b',', [콤후] [he / 정답\\1$]',a)

a = re.sub(r', '+r'(whose)\b',', [콤후즈] [where / 정답\\1$]',a)

a = re.sub(r', '+r'(whom)\b',', [콤훔] [which / 정답\\1$]',a)

a = re.sub(r', '+r'(where)\b',', [콤웨어] [there / which / 정답where$]',a)

a = re.sub(r', '+r'(which)\b',', [콤위치] [it / they / 정답which$]',a)

a = re.sub(r', '+r'(and)\b',', [콤앤드병렬] and',a)

a = re.sub(r', '+r'(or)\b',', [콤올병렬] and',a)

a = re.sub(r'(?i)(strongly) (suggest)\b','\\1 [제주명요] [정답\\2$ / \\2ed]',a)

if a.find('as'):

a = re.sub(r'(as|the) (well|soon|next|long) (as|time)','[긴접] \\1 \\2 \\3',a)

else:

a = re.sub(conj1+' '+prep1,'[접전] \\1 \\2',a)

#a = re.sub(r'\b(and|or|but) '+ving1,'\\1 [앤잉] [\\3 / 정답\\3\\4$]',a)

a = re.sub(r', (and|or|but) '+ving1,', \\1 [콤앤잉] [\\3 / 정답\\2$]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) '+pp[1],'\\1\\2 [앤피] [\\3ing / 정답\\3$]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) '+rv1,'\\1\\2 [앤동원] [정답\\3$ / \\3ing]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) (then) '+rv1,'\\1\\2 \\3[앤댄동원] [정답\\4$ / \\4ing]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) (\w+ly) '+rv1,'\\1\\2 \\3[앤부동원] [정답\\4$ / \\4ing]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) '+rv1+r'(es|s)\b','\\1\\2 [앤동스] [\\3 / 정답\\3\\4$]',a)

a = re.sub(r'(^(?:\S+ ){5,})(and|or|but) '+to[1]+r' (?!the|a|an|[A-Z]\w+)(\w+)\b','\\1\\2 [앤투] [\\4 / *\\3 \\4$]',a)

if re.findall(r'\b(and|but) '+r'(is)\b',a):

a = re.sub(r'\b(and|but) '+r'(is)\b','\\1 [앤비] [정답\\2$ / are]',a)

elif re.findall(r'\b(and|but) '+r'(are)\b',a):

a = re.sub(r'\b(and|but) '+r'(are)\b','\\1 [앤비] [is / 정답\\2$]',a)

elif re.findall(r'\b(and|but) '+r'(was)\b',a):

a = re.sub(r'\b(and|but) '+r'(was)\b','\\1 [앤비] [정답\\2$ / were]',a)

elif re.findall(r'\b(and|but) '+r'(were)\b',a):

a = re.sub(r'\b(and|but) '+r'(were)\b','\\1 [앤비] [was / 정답\\2$]',a)

a = re.sub(r'\b(and|but) '+r'(being)\b','\\1 [앤빙] [was / 정답being$]',a)

a = re.sub(r'\b(and|but) '+r'had\b','\\1 [앤핻] [having / 정답had$]',a)

a = re.sub(r', (\w+)ing (.*?\,) (we|he|she|they|I|you|it|my|your|his|her|their|its|our|the|a|an)\b',', [콤잉-분사구문] [\\1 / 정답\\1ing$] \\2 \\3', a)

a = re.sub(r'^'+ving1+r' ((?:\S+ ){7,})','[첫잉] [\\2 / 정답\\2\\3$] \\4',a)

a = re.sub(r'^'+pp[1]+r' ((?:\S+ ){7,})','[첫피] [\\1ing / 정답\\1$] \\2',a)

a = re.sub(r'^'+rv1,'[첫동] [정답\\1$ / \\1ing]',a)

a = re.sub(r'^(Were|Had|Should)\b','[첫도치] *\\1$',a)

a = re.sub(r'^(To)\b','[첫투] \\1',a)

a = re.sub(r'^'+adj1+' '+prep1,'[첫형전] #\\1 *\\2$',a)

a = re.sub(r'^(The) (\w+) (to)\b','[주투] \\1 \\2 \\3',a)

a = re.sub(boonsa[3]+r'ing\b','[감정분사] [정답\\1ing$ / \\1ed]',a)

a = re.sub(boonsa[3]+r'ed\b','[감정분사] [\\1ing / 정답\\1ed$]',a)

a = re.sub(article1+' '+ving1,'\\1 [더잉] [정답\\2$ / \\3ed]',a)

a = re.sub(article1+r' (\w+\-)'+ving1,'\\1 [더잉] \\2#\\3$',a)

#a = re.sub(article1+' '+r'(\S+)\-(\S+ed)\b','\\1 [더피] \\2-#\\3$',a)

#a = re.sub(article1+' '+pp[1],'\\1 [더피] [\\2ing / 정답\\2$]',a)

a = re.sub(pronadj[1]+' '+pp[1],'\\1 [대피] [\\2ing / 정답\\2$]',a)

a = re.sub(article1+' '+ad1+' '+ving1,'[더부잉] \\1 #\\2 #\\3$',a)

a = re.sub(article1+r' (?!proper|\w+cal)(\w+) '+ving1,'\\1 \\2 [더-잉] [정답\\3$ / \\4ed]',a)

a = re.sub(article1+r' (\w+) (\w+ly) '+ving1,'\\1 \\2 [더-부잉] \\3 #\\4$',a)

a = re.sub(article1+r' (\w+) (\w+ly) '+ving1,'\\1 \\2 \\3 [더-부잉] #\\4$',a)

#a = re.sub(article1+r' (\w+) '+pp[1],'\\1 \\2 [관-피] *\\3$',a)

a = re.sub(ved1+' '+ved1,'[이디이디야] \\1 [\\5ing / 정답\\4$]',a)

#a = re.sub(r'\b(?!have|has|had|is|are|was|were|be|been|being)(\w+) (?!family)(?:(\w+)(ly))'+' '+ved1,'\\1 [부이디] [\\2 \\4\\5 / 정답\\2\\3 \\4\\5$]',a)

#a = re.sub(r'\b(?!have|has|had|is|are|was|were|be|been|being)(\w+) (?!early|family)(?:(\w+)(ly))'+' '+adj1,'\\1 [부형] [\\2 \\4 / 정답\\2\\3 \\4$]',a)

a = re.sub(prep1+' '+ad1+' '+ving1,'[전부잉] \\1 \\2 [정답\\3$ / \\4ed]',a)

a = re.sub(r'\b(?i)(to) '+ad1+' '+ving1,'[투부잉] \\1 #\\2 #\\3$',a)

#a = re.sub(r'\b(?i)(to) '+ad1+r' (?!\w+ing)(\w+)\b','[투부동] \\1 #\\2$ \\3',a)

a = re.sub(prep1+r' (\w+) '+ved1,'\\1 \\2 [전-이디] [\\3ing / 정답\\3\\4$]',a)

a = re.sub(conj1+' '+conj1,'[접접] [\\2 / 정답\\1 \\2$]',a)

if re.findall(r'\bof them\b',a):

a = re.sub(r'\b(of)'+' '+r'(them)\b','[오뎀] [정답of them$ / of whom / of which]',a)

else:

a = re.sub(r'\b(to|'+prep1+r')'+' '+r'(which|whom|who)\b','[전접] [\\1 them / 정답\\1 \\3$]',a)

a = re.sub(r'\b(?!so)(\w+)\b '+adad1+' '+prep1,'\\1 [부전] [\\3 \\2 / 정답\\2 \\3$]',a)

a = re.sub(adad1+' '+ass[1],'[부전] [\\2 \\1 / 정답\\1 \\2$]',a)

a = re.sub(adad1+' '+to[1],'[부전] [\\2 \\1 / 정답\\1 \\2$]',a)

a = re.sub(prep1+' '+prep1,'[전전] [정답\\1 \\2$ / \\2 \\1]',a)

a = re.sub(r'\b(?i)(in)'+' '+r'(to)\b','[전전] [\\1 / 정답\\1 \\2$]$',a)

#a = re.sub(prep1+' '+adad1,'[전부] *\\1 *\\2$',a)

a = re.sub(r'\b(to|'+prep1+r')'+' '+pp[1],'\\1 [전피] [\\3ing / \\3]$',a)

#a = re.sub(adj1+r' (of)\b','\\1 [형오] [정답of$ / off]$',a)

a = re.sub(r'\b(made)'+' '+w12[1]+rv1,'[동명동] \\1 \\2[정답\\3$ / to \\3]',a)

a = re.sub(r'\b(?!is|are|was|were|been|be|has|have|had|as|that|not|when|haven.t|they|it|she|he|I|you|we)(\S+) '+r'(center|end)(ing)\b'+' '+r'('+prep1+r'|to|by|on)\b','\\1 [잉전] [정답\\2\\3$ / \\2ed] \\4',a)

a = re.sub(prep1+r'(\.$)','[전끝] [정답\\1$ / \\1 it]\\2',a)

#a = re.sub(r'\b(do|does|did|has|have|had|is|are|was|were|be|been|being|doing|having)'+r'(\.$)','[동끝] *\\1$\\2',a)

a = re.sub(r'\b(do|have)'+r'\.$',' [동끝] [are / 정답\\1$].',a)

a = re.sub(r'\b(does|has)'+r'\.$','[동끝] [is / 정답\\1$].',a)

a = re.sub(r'\b(did|had)'+r'\.$','[동끝] [was / 정답\\1$].',a)

a = re.sub(r'\b(is)'+r'\.$','[동끝] [정답\\1$ / does].',a)

a = re.sub(r'\b(be)'+r'\.$','[동끝] [정답\\1$ / do].',a)

a = re.sub(r'\b(are)'+r'\.$','[동끝] [정답\\1$ / do].',a)

a = re.sub(r'\b(was|were)'+r'\.$','[동끝] [정답\\1$ / did].',a)

a = re.sub(ved1+r'\.$','[이디끝_생략] [\\2ing / 정답\\1$].',a)

a = re.sub(ving1+r'\.$','[잉끝_생략] [정답\\1$ / \\2ed].',a)

a = re.sub(r'\b(do|have)'+',','[동콤] [are / 정답\\1$],',a)

a = re.sub(r'\b(does|has)'+',','[동콤] [is / 정답\\1$],',a)

a = re.sub(r'\b(did|had)'+',','[동콤] [was / 정답\\1$],',a)

a = re.sub(r'\b(is)'+',','[동콤] [정답\\1$ / does],',a)

a = re.sub(r'\b(are)'+',','[동콤] [정답\\1$ / do],',a)

a = re.sub(r'\b(was|were)'+',','[동콤] [정답\\1$ / did],',a)

a = re.sub(r'\b^(?!Imagine|Consider|Take|Think)(\w+) (that|who|whose|whom|where|which)\b','[주전] \\1 \\2,',a)

a = re.sub(prep1+r'(\,)','[전콤] [정답\\1$ / X]\\2',a)

a = re.sub(r'\b(to)\,','[투콤] [정답\\1$ / X],',a)

a = re.sub(adad1+r'(\.$)','[부끝] [정답\\1$ / X]\\2',a)

a = re.sub(adad1+',','[부콤] [정답\\1$ / X],',a)

a = re.sub(r'(?i)\b(if|although|when|since|because),','[접콤] \\1,',a)

a = re.sub(r'\b(and|or|but),','[앤콤] \\1,',a)

a = re.sub(r'\b((?:happen)(?:es|s)?) (that)\b','[일동댓] \\1 [what / 정답that$]',a)

a = re.sub('(not)'+' '+to[1],'[낫투] *\\1 *\\2$',a)

a = re.sub(to[1]+' '+be1+' '+pp[1],'[투비피] [정답\\1 \\2 \\3$ / being \\3]',a)

a = re.sub(to[1]+' '+r'(was|were|is|are|did|does|has)\b','[투워즈] *\\1 *\\2$',a)

a = re.sub(hv1+' '+to[1],'[조투] *\\1 *\\2$',a)

a = re.sub(be1+r' (equivalent|similar|central) '+to[1],'[비형투] *\\1 #\\2 *\\3$',a)

a = re.sub(be1+r' (necessary) '+prep1,'[비형전] *\\1 #\\2 *\\3$',a)

a = re.sub('(enough)'+' '+to[1],'[이넙투] *\\1 *\\2$',a)

#a = re.sub(vitav[1]+' '+it1+' '+w15[1]+tothat1,'[비타] #\\1 *\\2 \\3*\\4$',a)

a = re.sub(r'\bit'+' '+adj1,'it [잇형] [정답\\1$ / \\1ly]',a)

a = re.sub(r'\bit'+' '+ving1,'it [잇잉] [정답\\1$ / \\2ed]',a)

a = re.sub(it1+' '+middle[1]+r'\b(for)\b'+' '+middle[1]+to[1],'[잇포투] *\\1 \\2*\\3 \\4*\\5$',a)

a = re.sub(it1+' '+be1+' '+middle[1]+that1,'[잇댓] \\1 \\2 \\3[what / 정답\\4$]',a)

a = re.sub(iff[1]+' '+middle[1]+r'('+hverbpast[1]+r'|were\b)','[가정법] \\1 \\2\\3',a)

#a = re.sub(iff[1]+' '+middle[1]+r'\b(were)\b','[가정법] *\\1 \\2*\\3$',a)

a = re.sub(r'(I wish)'+' '+middle[1]+r'\b(were|had)\b','[iw가정법] \\1 \\2*\\3$',a)

a = re.sub(r'(I wish)'+' '+middle[1]+hverbpast[1],'[iw가정법] \\1 \\2*\\3$',a)

a = re.sub(r'(?i)\b(the) (?!matter|other|worker|number)(more|less|\S+er)\b '+middle[1]+', '+r'(?i)\b(the) (?!matter|other|worker|number)(more|less|\S+er) (\w+) (\w+)\b '+middle[1]+r'\b(the) (?!matter|other|worker|number)(more|less|\S+er) (\w+) (\w+)\b','[더비x3] *\\1 *\\2 #\\3, *\\4 *\\5 #\\6 #\\7 \\8*\\9 *\\10 #\\11 #\\12$',a)

a = re.sub(r'(?i)\b(the) (?!matter|other|worker|number)(more|less|\S+er)\b '+middle[1]+', '+r'(?i)\b(the) (?!matter|other|worker|number)(more|less|\S+er) (\w+) (\w+)\b','[더비더비] *\\1 *\\2 #\\3, *\\4 *\\5 #\\6 #\\7$',a)

if re.findall(r'\b(?!such)(\S+) '+r'(as|before|after|'+adconj1+r')'+' '+ving1,a):

a = re.sub(r'\b(?!such)(\S+) '+r'(as|before|after|'+adconj1+r')'+' '+ving1,'\\1 [부접잉] \\2 [정답\\4$ / \\5ed]',a)

elif re.findall(adconj1+' '+pp[1],a):

a = re.sub(adconj1+' '+pp[1],'[부접피] [\\1 \\2ing / 정답\\1 \\2$]',a)

a = re.sub(r'inged\b','ed',a)

a = re.sub(r'\b(?!such)(\S+) '+r'(before|after|'+adconj1+r') (often)'+' '+ving1,'\\1 [부접-잉] \\2 \\4 [정답\\5$ / \\6ed]',a)

a = re.sub(r'^'+adconj1+' '+ving1,'[부접잉] \\1 [정답\\2$ / \\3ed]',a)

a = re.sub(adconj1+r' (then) '+pp[1],'[부접-피] *\\1 \\2 #\\3$',a)

a = re.sub(r'(thought|thinks|think) '+hv1,'[띵조] #\\1 *\\2$',a)

a = re.sub(r'(thought|thinks|think) '+be1,'[띵비] #\\1 *\\2$',a)

a = re.sub(r'\b(however|whose|how) '+adj1,'[접xsv] [what / 정답\\1$] [정답\\2$ / \\2ly]',a)

a = re.sub(r'\b(however|whose|how) '+ad1,'[접xsv] *\\1 #\\2$',a)

a = re.sub(r'\b(?i)(no) (matter) (what)\b','[노매러-] \\1 \\2 [정답\\3$ / how]',a)

a = re.sub(r'\b(?i)(no) (matter) (how)\b','[노매러-] \\1 \\2 [what / 정답\\3$]',a)

a = re.sub(r'\b(?i)(each) (time)\b','[특접] \\1 \\2',a)

a = re.sub(r'\b(?i)(what|which|who|wher|when|whom)ever\b','[-에버] [\\1 / 정답\\1ever$]',a)

a = re.sub(r'\b(?i)(whose|unless)\b','[특접] \\1',a)

a = re.sub(r'\b(?i)(drastical|simultaneous|smooth|decisive)ly\b','[특부] [\\1 / 정답\\1ly$]',a)

a = re.sub(r'\b(?i)(usage)\b','[특명] #\\1$',a)

a = re.sub(r'\b(?i)(there) (is|are|was|were|\w+ed) (to)\b','[데얼동투] #\\1 *\\2 *\\3$',a)

a = re.sub(r'\b(?i)(there) (is|are|was|were|\w+ed)\b '+ving1,'[데얼동잉] *\\1 *\\2 #\\3$',a)

if re.findall(r'\bthat of\b',a):

a = re.sub(r'\b(?i)(that) (of)\b','[댓오] [정답\\1$ / those] \\2',a)

elif re.findall(r'\bthose ',a):

a = re.sub(r'\b(?i)(those)\b','[특대] [that / 정답\\1$]',a)

if re.findall(r'\b(?i)(fewer)\b',a):

a = re.sub(r'\b(?i)(fewer)\b','[특형] [정답\\1$ / lesser]',a) 

else:

a = re.sub(r'\b(?i)(lesser)\b','[특형] [fewer / 정답\\1$]',a) 

a = re.sub(r'\b(?i)(none) (of)\b','[특형2] #\\1 *\\2$',a)

a = re.sub(r'\b(?i)(willing)\b','[특잉] #\\1$',a)

a = re.sub(r'\b(so) '+w15[1]+r'\b(that)\b','[소댓] [정답\\1$ / such] \\2[정답\\3$ / how]',a)

a = re.sub(r'\b(such) '+w15[1]+r'\b(that)\b','[서치댓] [so / 정답\\1$] \\2[정답\\3$ / how]',a)

a = re.sub(r'\b(so) (often )?(that)\b','[소댓] [such \\2that / 정답\\1 \\2\\3$]',a)

if re.findall(fivev[0], a):

a = re.sub(fivev[1]+' '+r'(?!to )'+w12[1]+to[1]+r' (?!the|a|an|him|her|it|you|me|them|us)(\w+)\b','[동명투] \\1 \\2[\\4ing / 정답\\3 \\4$]',a)

else:

a = re.sub(fivev[1]+' '+r'(?!to )'+w15[1]+to[1]+r' (?!the|a|an|him|her|it|you|me|them|us)(\w+)\b','[동명투] \\1 \\2[\\4ing / 정답\\3 \\4$]',a)

a = re.sub(r'\b((?:keep|kept)(?:ing|s|ed)?) '+pronobj[1]+' '+adj1,'[동명형] #\\1 \\2 #\\3$',a)

#a = re.sub(r'\b((?:let|mak|hav|help|made)(?:es|s|ed|e|ing)?)\b'+' '+w12[1]+verb[1],'[렛잇고] *\\1 \\2*\\3$',a)

a = re.sub(r'(spends|spend|spent)'+' '+w15[1]+ving1,'[스시잉] \\1 \\2[정답\\3$ / to \\4]',a)

a = re.sub(r'\b(suggested) (to) (.*?) (go)\b','[제주동원] #\\1 \\2 \\3 *\\4$',a)

a = re.sub(r'(wastes|waste|wasted)'+' '+w15[1]+ving1,'[웨시잉] #\\1 \\2#\\3$',a)

a = re.sub(r'(feels|feel|felt)'+' '+pp[1],'[필피] *\\1 #\\2$',a)

a = re.sub(r'(seems|seemed|seem)'+' '+to[1]+' '+have1,'[심투햅] *\\1 *\\2 *\\3$',a)

a = re.sub(r'(believed|believes|believe)'+' '+to[1]+' '+have1,'[빌투햅] #\\1 *\\2 *\\3$',a)

a = re.sub(r'(thinks|thikn|thought)'+' '+to[1]+' '+have1,'[띵투햅] *\\1 *\\2 *\\3$',a)

a = re.sub(r'(?i)(were|had)'+' '+it1,'[가정법?] *\\1 *\\2$',a)

a = re.sub(r'\b(?i)(despite|toward|towards|given that)\b','[특전] \\1',a)

a = re.sub(r'\b(?i)(throughout)\b','[특전] [thorough / 정답\\1$]',a)

a = re.sub(r'\b(In spite of)\b','[특전] [Although / 정답\\1$]',a)

a = re.sub(r'\b(in spite of)\b','[특전] [although / 정답\\1$]',a)

a = re.sub(r'\b(?i)(regardless|due|owing|thanks|prior|instead|because)'+' '+r'(to|of)\b','[긴전2] [\\1 / 정답\\1 \\2$]',a)

a = re.sub(r'\b(?i)(on|in)'+' '+r'(behalf|accordance|spite|respect|relations|relation|addition)'+' '+r'(to|of|with)\b','[긴전3] *\\1 #\\2 *\\3$',a)

a = re.sub(r'\b(?i)(as)'+' '+r'(a)'+' '+r'(result)'+' '+r'(of)\b','[긴전4] [\\1 \\2 \\3 / 정답\\1 \\2 \\3 \\4$]',a)

a = re.sub(r'\b(?i)(each)'+' '+r'(of) '+middle[1]+r' (\w+s)\b','[이치오복] *\\1 \\2 \\3 *\\4$',a)

a = re.sub(r'\b(?i)(many)'+' '+r'(of)\b','[매니오] [many / 정답\\1 \\2$]',a)

a = re.sub(r'\b(?i)(many)'+' '+r'(are)\b','[매니아] \\1 [is / 정답\\2$]',a)

a = re.sub(r'\b(?i)(help(?:\w+)?)'+' '+verb[1],'[헲(to)동] [정답\\1 \\2$ / \\1 \\2ing]',a)

a = re.sub(r'\b(?i)(all)'+' '+r'(you|they|I|he|she|we) (have|has|had|needed|need)\b','[올(댓)유] *\\1 \\2 *\\3$',a)

a = re.sub(r'\b(?i)(than)'+' '+r'(likely) (\w+)\b','[댄라잌] #\\1 #\\2 *\\3$',a)

a = re.sub(r'\b(?i)(than)'+' '+r'(to)\b','[댄투] #\\1 *\\2$',a)

a = re.sub(r'\b(?i)(than)'+' '+r'(what)\b','[댄왓] \\1 [how / 정답\\2$]',a)

a = re.sub(r'\b(?i)(than)'+' '+ving1,'[댄잉] \\1 [\\3 / 정답\\2$]',a)

a = re.sub(prep1+' '+r'(what)\b','[전왓] \\1 [how / 정답\\2$]',a)

a = re.sub(r'\b(?i)(than)'+' '+prep1,'[댄전] \\1 [정답\\2$ / X]',a)

a = re.sub(r'\b(?i)(don.t)'+' '+r'(is)\b','[돈이즈] #\\1 *\\2$',a)

a = re.sub(r'\b(?i)(?!has|had|have|is|are|was|were|be|being|been|having)(\w+) (now)'+' '+r'(\w+)ed\b','\\1 [나우과동] \\2 [\\3 / #\\3ed$]',a)

a = re.sub(r'\b(?i)(to)'+' '+ving1,'[투잉] \\1 [\\3 / 정답\\2$]',a)

a = re.sub(r'\b(?i)(misconception|impression|belief|illusion|likelihood|fact|idea|possibility|evidence)'+' '+r'(that)\b','\\1 [동격댓] [정답\\2$ / which]',a)

a = re.sub(r'\b(than)'+' '+r'(is|are|was|were|do|did|does|has|have|had)\b','[댄동] #\\1 #\\2$',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(had|did)\b','[댄~동] \\1 \\2[was / 정답\\3$]',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(was|were)\b','[댄~동] \\1 \\2[정답\\3$ / had]',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(has|does)\b','[댄~동] \\1 \\2[is / 정답\\3$]',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(is)\b','[댄~동] \\1 \\2[정답\\3$ / does]',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(do|have)\b','[댄~동] \\1 \\2[are / 정답\\3$]',a)

a = re.sub(r'\b(than)'+' '+r'((?:\w+ ){1,2})(are)\b','[댄~동] \\1 \\2[정답\\3$ / does]',a)

a = re.sub(r'\b(as)'+' '+w12[1]+r'(is|are|was|were|do|did|does|has|have|had)\b','[애즈~동] *\\1 \\2#\\3$',a)

a = re.sub(r'\b(as)'+' '+r'(is|are|was|were|do|did|does|has|have|had|avoid)\b','[애즈동] [정답\\1 \\2$ / \\1 to \\2]',a)

a = re.sub(r'\b(?i)(So)'+' '+r'(\w+sive) '+be1,'[소형비] [\\1 \\3 \\2 / 정답\\1 \\2 \\3$]',a)

a = re.sub(be1+' '+r'(of)\b','[비_옵] [\\1 / 정답\\1 \\2$]',a)

a = re.sub(be1+' '+r'(among)\b','[비_어몽] [\\1 / 정답\\1 \\2$]',a)

#a = re.sub(r'(?i)\b((?:rule)(?:es|s|ed|d|ing)?)'+' '+r'('+prep1+r'|to|off|out)\b','[특동] #\\1 *\\2$',a)

#a = re.sub(r'(?i)\b(?!is|are|was|were|be|been|being|very)(\w+) '+adj1+r' ('+prep1+r'|to|off)\b','\\1 [형전] [정답\\2$ / \\2ly] \\3',a)

a = re.sub(r'\b(?i)(if)'+' '+middle[1]+', '+middle[1]+r'(\bwill\b)','\\1 \\2, \\3[이프윌x] *\\4$',a)

a = re.sub(r'\b(?i)(having)'+' '+beening[1]+' '+pp[1],'[해빙빈피] *\\1 *\\2 #\\3$',a)

a = re.sub(r'\b(?i)(are|is|was|were)'+' '+r'(\w+ly) '+verb[1],'[비부동] *\\1 \\2 #\\3$',a)

a = re.sub(hv1+' '+w02[1]+r'(likely) (\w+)\b','[조라잌] \\1 \\2[like / 정답likely$] [정답\\4$ / to \\4]',a)

a = re.sub(r'\b(have|has|had) (as)\b','[햅애즈] \\1 \\2',a)

a = re.sub(r'\b(?i)(one) (of) (.*?) (\w+)s\b(.*?)\b (was)\b','[원오복단] \\1 \\2 \\3 [\\4 / 정답\\4s$]\\5 [정답\\6$ / were]',a)

a = re.sub(r'\b(?i)(one) (of) (.*?) (\w+)s\b(.*?)\b (is)\b','[원오복단] \\1 \\2 \\3 [\\4 / 정답\\4s$]\\5 [정답\\6$ / are]',a)

a = re.sub(r'\b(?i)(the) (number) (.*?) (\w+s) (.*?)\b(was|is)\b','[더넘오복단] *\\1 #\\2 \\3 #\\4 \\5*\\6$',a)

a = re.sub(r'\b(?i)(little|never|neither|nor|scarcely|hardly|rarely) (does|do|did|was|were|am|are|is) (\w+) (\w+)\b','[도치] *\\1 *\\2 *\\3 #\\4$',a)

a = re.sub(r'\b(?i)(not only) (does|do|did|was|were|am|are|is) (\w+) (\w+)\b','[낫온리_두유럽미] [\\1 \\3 \\2 \\4 / 정답\\1 \\2 \\3 \\4$]',a)

a = re.sub(r'\b(?i)(not) (until) (.*?) (does|do|did)\b','[도치] *\\1 #\\2 \\3 *\\4$',a)

a = re.sub(r'\b(?i)(Hardest) (hit) (may) (be)\b','[특이도치] #\\1 *\\2 \\3 *\\4$',a)

a = re.sub(r'\b(?i)(?!is|are|was|were|been|being|be)(\w+) (called|named)\b','\\1 [불리는] #\\2$',a)

a = re.sub(r'\b(?i)(a)(board|plenty|like|sleep|loud|vailable|lone)\b','[a형,a부] [\\2 / 정답\\1\\2$]',a)

a = re.sub(r'\b(?i)(latter|lately|latest|later)\b','[랏] [정답*\\1$]',a)

a = re.sub(r'\b(?i)(latter|lately|latest|later)\b','[랏] [정답*\\1$]',a)

a = re.sub(verb[1]+' '+ad1+' '+adj1,'[동부형] \\1 \\2 [정답\\3$ / \\3ly]',a)

#a = re.sub(verb[1]+' '+pronobj[1]+' '+adad1,'[동대부] \\1 \\2 [over / 정답\\3$]',a)

a = re.sub(article1+' '+r'(\w+)'+' '+pron1,'[더명(댓생)대] \\1 \\2 \\3',a)

a = re.sub(article1+' '+r'(\w+)'+' '+article1,'[더명(댓생)더] \\1 \\2 \\3',a)

a = re.sub(r'(reminds|reminded|remind)'+' '+r'(\w+) (of)\b','[리마인드_N_of] #\\1 \\2 *\\3$',a)

a = re.sub(r'\b(reach|reached|reaches)\b','[리치투x] \\1 [to / 정답X$]',a)

a = re.sub(r'\b(keep|keeps|kept) (\w+) \b'+adj1,'[킵명형] *\\1 \\2 #\\3$',a)

a = re.sub(r'\b(end|ends|ended|ending) (up) '+ving1,'[엔업잉] \\1 \\2 [정답\\3$ / to \\4]',a)

a = re.sub(r'\b(?!without|by|over|on|in|under|by|next to|to|for|from|of|into|across|onto|is|are|was|were|been|be|has|have|had|as|that|not|when|haven.t|they|it|she|he|I|you|we|and|or|but|so|)(\S+) '+r'(\w+ing)\b '+article1,'\\1 [잉어] #\\2 \\3$',a)

a = re.sub(r'\b(?i)(which) '+w15[1]+r'\b((?:work)(?:es|s|ed|d)?)\b','[어떤위치] #\\1 \\2\\3$',a)

a = re.sub(r'\b(?i)(it|it\'s) '+w12[1]+prep1+middle[1]+that1,'[잇댓강조] *\\1 \\2\\3\\4*\\5$',a)


a = re.sub(r'\#(..)(\w+)\b','\\1<div class=clozeblank>\\2</div>',a)

a = re.sub(r'\*(.)(\w+)\b','\\1<div class=clozeblank>\\2</div>',a)

a = re.sub(r'\@(\S+)\b','<div class=clozeblank>\\1</div>',a)

a = re.sub(r'(\w+)inged\b','\\1ed',a)

a = re.sub(r'\b(?!succe)(\w+)eding\b','\\1ing',a)

a = re.sub(r'pp\b','p',a)

a = re.sub(r'iing\b','ying',a)

#a = re.sub(r'\b(?!being)(?:(\w+)eing)\b','\\1ing',a)

correct = open('correction.db','rt',encoding='utf8').read().splitlines()

for i in correct:

t = i.split(':')

if a.find(t[0]) >-1:

a = re.sub(r'\b'+t[0]+r'\b',t[1],a)

#a = re.sub(r'\*(\w+)\b','<div class=clozeblank>\\1</div>',a)

return a



728x90
반응형