1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
import re
from collections import Counter
ch = """Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce neque tortor, pulvinar eu mollis a, mollis et sem. Proin vehicula vehicula nulla sit amet ultrices. Duis sit amet ligula semper, hendrerit orci vel, ultricies quam. Integer consequat venenatis urna eget pharetra. Fusce accumsan risus euismod risus egestas pretium. Maecenas quis purus aliquam, pharetra felis nec, dictum orci. In quis elit mi. Praesent vel condimentum est. Curabitur dictum rhoncus ante, vitae sollicitudin elit scelerisque a.
Duis ut urna at odio sollicitudin feugiat et sed nulla. Fusce odio ante, fermentum quis eros ut, rutrum blandit massa. Nulla aliquam leo a magna lacinia euismod. Donec laoreet, ante sed dictum porttitor, quam diam iaculis turpis, vitae lobortis tellus massa sed mauris. Integer malesuada enim nisl, non faucibus magna dapibus eu. Curabitur nec felis rutrum, scelerisque tortor non, porta arcu. Ut lacinia ante laoreet augue sollicitudin, a accumsan arcu fermentum.
Vestibulum vel nisi tempor, tristique 95590 vitae, finibus metus. Donec egestas, lectus ut euismod imperdiet, nisl leo aliquet mi, quis elementum risus velit quis velit. Quisque tincidunt sapien ac iaculis molestie. Etiam hendrerit purus mi, quis suscipit dui ornare a. Duis consectetur venenatis enim ac vehicula. Suspendisse a est et risus faucibus faucibus vel at dolor. Pellentesque facilisis tellus in sodales tincidunt. Morbi efficitur magna ac mauris iaculis malesuada. 78100 pellentesque magna sit amet erat cursus sagittis.
Curabitur dapibus dui nec tellus pretium pellentesque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Morbi et mi velit. Donec sollicitudin urna sed viverra pharetra. Mauris ornare turpis nec quam consequat sodales. Phasellus ultrices vel augue sed placerat. In at erat id tortor facilisis lacinia. Cras vel pellentesque ligula. Nullam a arcu metus. Aenean vitae augue eu tellus tincidunt dictum. Ut vel rhoncus neque, non eleifend ante. Integer in efficitur tortor. Fusce fringilla in lacus sit amet mollis. Ut ex erat, venenatis in elit ac, auctor interdum lorem.
Nulla eleifend non justo nec aliquam. Duis venenatis neque vel faucibus aliquam. Nam posuere ligula sodales, interdum diam porttitor, aliquam ligula. In euismod tincidunt gravida. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce molestie nibh ut sem tincidunt, eu mollis erat aliquet. Nam non metus sed tortor cursus vestibulum vel eget felis. Fusce tortor enim, accumsan non odio a, ullamcorper lobortis elit. Nulla vel venenatis elit, sit amet pretium leo. In varius risus in tincidunt tempus. Etiam volutpat sit amet nisl eu posuere. Nulla dapibus sit amet dui quis scelerisque. Vivamus vehicula nisi in nunc tempus tincidunt. Ut mauris orci, molestie ut erat ut, gravida commodo tellus. Fusce eget erat porttitor, feugiat turpis et, dignissim ante. Praesent tellus neque, tempor non ornare vel, faucibus at felis.
Aliquam hendrerit sit amet nunc id vulputate. Donec quam sem, euismod vitae nulla ac, tincidunt pulvinar purus. Aliquam consequat, eros ac feugiat porta, diam orci bibendum mauris, ut faucibus ex dui at orci. In hac habitasse platea dictumst. Mauris venenatis nisi elit, quis vulputate tellus imperdiet at. In hac habitasse platea dictumst. Pellentesque sed elit semper, pretium quam id, consectetur urna. Phasellus magna tellus, lacinia venenatis enim ut, lacinia vulputate elit. Aliquam elit lectus, scelerisque nec nisl vitae, scelerisque egestas purus. Cras posuere hendrerit magna, sed tempor dolor venenatis in. Aenean tortor libero, volutpat non aliquet hendrerit, sagittis in odio. Duis ac turpis neque. Cras ultricies purus nisl, eget varius quam viverra eget. Sed consequat eu turpis quis placerat. Aliquam erat volutpat.
Nunc nulla erat, consectetur eu eros sit amet, tincidunt pulvinar metus. Morbi hendrerit iaculis nibh a volutpat. Vivamus ac tristique lorem. Proin at ultricies nulla, sit amet tincidunt magna. Vestibulum pellentesque velit quis velit venenatis tempor. Etiam lacus tellus, ullamcorper ut ornare vitae, tristique sed diam. Phasellus vel elit id metus sagittis euismod. Praesent pellentesque molestie dignissim. Ut in ornare augue, vitae consectetur enim. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Mauris ut mi magna. Fusce ultrices lacus molestie ante porttitor, in venenatis lorem ornare. Phasellus sed imperdiet ligula, sed venenatis augue. Nullam et nunc placerat, hendrerit nunc ut, eleifend enim. Nullam sit amet hendrerit libero, sit amet fermentum tortor.
Vivamus non gravida felis. Nulla ac neque dui. Proin elementum lacinia vehicula. Fusce quis porttitor est. Nullam in orci est. Mauris quis velit rutrum, consequat ex id, placerat eros. Curabitur pellentesque elit vitae sagittis auctor. Aenean convallis id nisl sit amet malesuada. Ut placerat commodo molestie. Nullam ultricies ante libero, ut blandit velit rutrum non. Etiam gravida augue in sagittis dictum.
Cras ornare id nunc et placerat. Proin ornare sem eu metus efficitur, eget efficitur lacus egestas. Mauris feugiat leo a elementum sollicitudin. Nullam posuere diam libero. Sed mollis sit amet justo sit amet accumsan. Aliquam tristique lobortis sodales. Pellentesque nec feugiat augue, eget pretium mauris. Nunc interdum risus quam, sed iaculis orci condimentum at. Nunc ut imperdiet elit, non dignissim mauris. Suspendisse ut lacus ut tortor iaculis sagittis vitae sed mauris. Maecenas eu dapibus metus. Curabitur rhoncus ipsum malesuada blandit venenatis. Suspendisse lacinia posuere sem ac tempus. Ut dapibus risus at lorem malesuada tincidunt. Maecenas vulputate neque vel tellus egestas posuere.
Integer tincidunt tortor vel sem rutrum posuere. Maecenas vitae ligula vestibulum, semper justo vitae, aliquet arcu. Aliquam id nulla mi. Phasellus eget sodales dolor, eu dictum erat. Vestibulum tempor gravida nisl, nec vulputate velit. Aliquam ut venenatis velit, eget lobortis massa. Proin pharetra velit mi, at fringilla enim efficitur quis. Aenean congue augue ornare, congue sem vestibulum, semper odio. Praesent at magna metus. Sed quam eros, egestas et sagittis et, dapibus nec arcu. Aliquam vel fringilla velit. Sed eu fringilla quam. Curabitur mattis orci erat, eu suscipit arcu efficitur a. Suspendisse potenti. Fusce rutrum ultricies urna.
Vestibulum quis feugiat neque, nec bibendum mi. Nunc ultrices nisl lorem, et scelerisque tellus porttitor eu. Aenean condimentum vestibulum massa sit amet vestibulum. In magna neque, pharetra quis velit id, tempus congue neque. Etiam fringilla tempus sapien ut accumsan. Pellentesque eget mi et lorem posuere lobortis. Fusce tristique, enim vitae eleifend dictum, ligula nisl posuere purus, id placerat arcu nulla eget mauris. Integer varius porttitor purus, vel facilisis est pretium dapibus. Aenean posuere nisl sit amet risus dapibus, vel placerat felis vulputate.
Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam tempus congue neque, quis ornare nisl consectetur finibus. Suspendisse dignissim dolor risus, a pulvinar mauris ullamcorper vitae. Integer placerat, ex ut porta aliquet, sem quam mollis justo, quis viverra elit est quis erat. Vivamus sit amet ultrices metus. Donec eu est neque. Nulla interdum dictum turpis, non consectetur felis dignissim eu. Morbi justo dolor, fermentum et velit varius, suscipit aliquam neque.
Maecenas ultrices justo nisl, eu accumsan lorem gravida eu. Mauris quis mi volutpat massa lobortis vulputate sed a lacus. Maecenas lacus nisi, scelerisque vehicula venenatis eu, dapibus pretium lectus. Fusce ut tellus non mi blandit hendrerit. Mauris iaculis condimentum erat luctus bibendum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas gravida nisi nibh, et pulvinar augue lobortis finibus. Quisque nec urna vel justo imperdiet tempus et id turpis. Duis euismod est sed metus ultricies mollis. Donec nec scelerisque massa. Sed scelerisque venenatis velit eu convallis. Sed nec tristique mauris.
Sed pharetra et metus ac sollicitudin. Proin et lobortis mauris, luctus dapibus nisl. Aenean id commodo ante. Vestibulum pretium faucibus massa eget luctus. Vivamus arcu lacus, finibus at volutpat eget, iaculis in risus. Maecenas finibus metus sit amet justo ullamcorper tincidunt. Nullam aliquet dui massa, eget scelerisque neque imperdiet malesuada. Mauris placerat, ante a ultrices bibendum, ipsum libero venenatis massa, a pharetra nisl ipsum quis ipsum.
Duis sed magna faucibus, rutrum nulla sed, auctor nisl. Nullam aliquam turpis a nisi sodales dapibus. Interdum et malesuada fames ac ante ipsum primis in faucibus. Etiam ornare lectus ligula, ac luctus nunc hendrerit luctus. Suspendisse consectetur mattis iaculis. Nullam porta metus id mi sagittis congue. Vestibulum semper nulla massa, eget vehicula erat tempus sed. Maecenas imperdiet mauris nec sem imperdiet dapibus. Mauris dictum sem non purus suscipit lacinia. Nullam at dapibus est. Donec a ipsum id ipsum suscipit tempus. Aliquam et nisl in dolor blandit efficitur. Aliquam non semper nunc.
Phasellus at bibendum mauris, id fermentum enim. Vestibulum hendrerit condimentum est vel consectetur. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec fermentum vulputate arcu, sit amet varius ex commodo a. Phasellus sit amet interdum lorem, nec convallis ligula. Praesent convallis vitae sapien nec sodales. Praesent sed dignissim lorem. Praesent ac condimentum nunc, sit amet laoreet augue. Suspendisse tristique mauris interdum nunc convallis suscipit. Phasellus id lorem at mi ultricies sagittis consectetur ut diam.
Pellentesque sit amet enim in magna vulputate egestas sed id lectus. Donec pulvinar eros eu neque tristique, a tristique libero sodales. Nulla et mauris nec lacus mattis gravida quis in eros. Nam et nibh sed turpis auctor mattis vel non felis. Quisque non erat non est blandit iaculis sodales ac est. Sed venenatis ligula ligula, non dignissim dolor posuere in. Vestibulum dictum massa at tincidunt maximus. Nulla facilisi. Maecenas malesuada, dui sit amet condimentum ultricies, risus orci sagittis nisi, ut vestibulum neque risus vitae eros. Sed eleifend, odio vel fringilla commodo, est velit rutrum metus, at elementum mi purus non dolor. Ut imperdiet ante eu finibus elementum. Nullam commodo ut est condimentum suscipit. Curabitur hendrerit laoreet urna, ut gravida ipsum gravida ut.
Nam leo erat, fermentum sit amet ultrices ac, efficitur venenatis magna. Nam eu pretium neque. Donec ultricies lorem eu metus pharetra, vel aliquet magna tempor. Fusce id purus quis tellus efficitur aliquam. Maecenas eu dui lacinia, lacinia lorem nec, suscipit lorem. Vestibulum lacinia vel turpis nec porta. Mauris congue pellentesque nunc ac luctus. Nam dignissim mauris sem, non rutrum massa pellentesque in.
In hac habitasse platea dictumst. Nullam imperdiet quam nisl, sed convallis sem tincidunt in. Fusce finibus vestibulum sem at aliquam. Donec pretium, leo sit amet euismod faucibus, urna erat pulvinar massa, ac maximus nisi tellus vitae mauris. In eu ultricies orci, vel dictum nisl. Vivamus diam nunc, auctor at lacus non, dictum porttitor tellus. Nullam a metus iaculis, dignissim mi a, viverra nunc. Aenean suscipit dapibus aliquam. Sed laoreet malesuada convallis. Fusce blandit sem velit, sed accumsan nisi consectetur et. Suspendisse in magna vitae neque imperdiet bibendum nec ut orci. Fusce sed pretium nunc, id ullamcorper arcu. Quisque lobortis, elit vel consequat mattis, orci arcu maximus ligula, elementum lobortis eros mauris fringilla felis. Suspendisse in nibh posuere, pellentesque arcu tempus, cursus ligula. Aliquam erat volutpat.
Phasellus ut felis ac nisl tincidunt mollis et sit amet sapien. Praesent fermentum diam imperdiet dui gravida auctor. Praesent ullamcorper nec sem sed posuere. Etiam vulputate mi fermentum lorem tristique, vitae commodo ligula eleifend. Aenean efficitur mi et eros porta pulvinar. Quisque dignissim nisl in ipsum hendrerit aliquam. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nullam varius pretium ex, quis ultricies massa bibendum tincidunt. Pellentesque vel erat sem. Nulla facilisi. Suspendisse potenti. Nam nec aliquet massa, quis ornare ipsum. Nulla risus quam, cursus quis pulvinar ut, posuere eget eros. Quisque at convallis lorem.
Nunc interdum erat risus, elementum aliquam eros tempus vitae. Sed hendrerit lobortis nunc, sit amet convallis odio interdum at. Integer semper tellus non dictum facilisis. Aenean efficitur felis quis tellus congue blandit. Nunc convallis diam vel diam mattis ornare. Curabitur at feugiat elit, vitae scelerisque quam. Nunc vitae auctor purus. Donec ornare lorem velit, nec blandit velit luctus ut. Phasellus vulputate sed metus vel pretium.
In porttitor mi a nisl hendrerit, in laoreet ante interdum. Morbi hendrerit neque quis felis ornare, fermentum tristique nibh feugiat. Ut ut mauris ac eros mollis suscipit non a nisi. Cras in iaculis ex. Curabitur malesuada risus non diam venenatis accumsan. Curabitur vitae laoreet dolor, vitae mollis libero. Etiam non egestas neque. Suspendisse vel mi in est euismod tincidunt. Fusce tempus, tortor id ultricies aliquam, odio ante tristique odio, in vehicula turpis turpis at quam. Curabitur nulla massa, consectetur vel vehicula id, congue in enim. Duis nec orci ac libero sodales porta.
In cursus erat ligula, quis porta elit posuere a. Etiam vitae nisl imperdiet, fringilla libero ac, sollicitudin nisi. Sed euismod libero non enim dignissim, nec vulputate urna tempus. Phasellus consequat sapien sed massa vulputate, sed maximus augue dictum. Vivamus ut placerat sem. Proin in metus non dui viverra interdum. Aliquam eu nisi metus. Ut vel turpis sed turpis gravida viverra eget nec urna.
Mauris vehicula quis metus sed viverra. Donec facilisis turpis augue, vitae aliquet arcu euismod ac. Vivamus luctus, dolor vel molestie fringilla, ex sapien fermentum lorem, quis hendrerit tellus quam a ligula. Vestibulum mollis gravida elit, ut aliquam mauris faucibus sed. Nullam sed elementum est. Praesent turpis augue, lacinia sit amet ipsum in, condimentum vehicula augue. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu lobortis ex. Curabitur tincidunt pulvinar feugiat. Sed at posuere tortor. Nulla vestibulum euismod mauris.
Nulla sit amet sapien sit amet felis accumsan interdum finibus id mi. Nunc ut blandit metus. Donec ut venenatis ex. Pellentesque at nisi a dolor placerat tincidunt quis ac dui. Pellentesque et consectetur est, ut volutpat quam. Interdum et malesuada fames ac ante ipsum primis in faucibus. Pellentesque nisi nibh, aliquet at velit eget, blandit efficitur dolor. Nullam tortor ex, ultricies non volutpat ut, luctus sed justo. Vivamus enim nisi, congue quis nisl nec, dictum gravida elit. Integer hendrerit nisi eu lacus bibendum dapibus. Cras eros tortor, dictum eget elit et, sollicitudin laoreet ligula. Quisque at neque eros.
Suspendisse tempor sapien at felis tincidunt consequat. Aenean porta condimentum odio pellentesque porta. Aenean euismod nunc dui. Praesent vel pretium orci. Pellentesque ac euismod purus. Nam a libero ac erat aliquet gravida sed ut sapien. In eget maximus ante, in viverra nisi. In in lectus bibendum, molestie urna in, consectetur lacus. Curabitur in lorem et tortor tempor suscipit.
Etiam efficitur erat vel sapien sagittis feugiat. Vestibulum ac leo sed felis suscipit posuere. Donec facilisis ante leo. Nullam fringilla faucibus nunc, vitae dictum lacus. Quisque et vulputate nisl. Nullam imperdiet justo orci, at cursus erat ornare ac. Integer auctor quis odio sed porta. Integer fermentum malesuada leo quis luctus. Etiam vel felis malesuada, imperdiet erat mattis, euismod ligula. Ut a justo vitae tortor dignissim hendrerit a in quam.
Aliquam nec nulla gravida, tincidunt elit sed, semper sem. Sed id venenatis erat. Integer leo nisi, lobortis quis orci ut, dictum consectetur mi. Aliquam erat volutpat. Maecenas vulputate malesuada neque, a consequat massa tempor in. Aenean non auctor metus, et lobortis est. Nullam viverra malesuada scelerisque. Nullam ac dolor volutpat, lacinia elit a, placerat sem. Sed eget viverra enim, aliquet blandit dolor. Donec elementum orci sit amet magna egestas rutrum.
Nullam non posuere quam. Cras suscipit nunc aliquam massa tincidunt, non tristique purus iaculis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris libero mauris, suscipit ac imperdiet ut, suscipit vel massa. Maecenas non elit suscipit, dignissim tortor non, gravida ante. Ut ipsum nunc, consequat sit amet enim nec, auctor dictum risus. Sed porta purus eu massa accumsan, a placerat nisl bibendum. Nulla a finibus massa. Vivamus scelerisque consequat aliquet. Ut placerat ullamcorper orci, ac cursus orci eleifend ac. Pellentesque finibus feugiat lacus nec convallis. Quisque eu risus justo. Vestibulum rhoncus vestibulum enim, id cursus ipsum varius in. Phasellus eleifend imperdiet massa, sit amet ultricies dolor vulputate et. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Proin dapibus erat at pharetra sollicitudin.
Sed dapibus justo vel varius volutpat. Fusce neque ante, finibus at sollicitudin quis, mollis vel mauris. In blandit fermentum efficitur. Nulla consequat, massa at lacinia auctor, neque arcu rutrum ligula, ac fringilla justo magna et ex. Nulla eu turpis egestas, egestas erat non, condimentum sapien. Pellentesque rutrum hendrerit est vel pellentesque. Vestibulum fringilla condimentum finibus. Nullam fringilla urna at magna sagittis, ut consequat ipsum tristique. Ut vel tincidunt tellus. Fusce vel accumsan felis. Donec vel orci convallis, imperdiet mi vel, porta lacus.
Phasellus pellentesque sollicitudin bibendum. Proin quis ligula nec justo laoreet suscipit quis quis sapien. Suspendisse hendrerit, odio in dapibus dapibus, ipsum velit suscipit neque, vitae imperdiet dolor orci sed sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Vestibulum laoreet eleifend est, non ornare urna rutrum a. Proin in mi eget augue fermentum pellentesque luctus eu quam. Mauris vel convallis nunc. Nunc ac elit enim. Donec in arcu mollis, dapibus leo tincidunt, aliquet neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Proin nec rhoncus odio.
Curabitur ut dui ex. In ac sagittis quam, quis laoreet ex. Vivamus posuere purus arcu, non ullamcorper eros tristique ut. Donec malesuada orci aliquam ante varius, vel fringilla dui mollis. Nulla efficitur tellus et leo pharetra dictum. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nunc mattis pulvinar mauris. Aliquam varius lobortis dignissim. Vestibulum tempus magna risus, quis imperdiet leo tincidunt eget.
Quisque volutpat volutpat arcu pellentesque semper. Sed sed bibendum libero, quis dignissim arcu. Suspendisse potenti. Curabitur consectetur dolor gravida velit scelerisque pharetra. Morbi erat odio, tempor id magna cursus, scelerisque dapibus nibh. Cras quis eros in nulla ultrices consequat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Proin quis pulvinar turpis. Vivamus consequat ligula dapibus, mollis orci sed, ullamcorper mi. Vivamus venenatis tristique posuere. Maecenas sollicitudin diam at fringilla aliquet. Fusce varius et diam eu laoreet. Proin malesuada augue ac nunc dictum vulputate. Aliquam accumsan purus ac orci elementum, eget porta lorem dictum. Quisque non dictum arcu. Proin pretium ullamcorper commodo.
Nam sit amet facilisis est, quis lobortis dui. Sed quis laoreet enim. Proin quis sapien placerat arcu aliquam egestas. Interdum et malesuada fames ac ante ipsum primis in faucibus. Duis in rhoncus arcu. Morbi eget nunc bibendum, finibus diam at, commodo velit. Sed et euismod nisl. Aliquam scelerisque sodales orci, a cursus magna venenatis et.
Maecenas ac turpis sed eros varius eleifend. Ut ante eros, commodo sollicitudin mattis eu, suscipit quis leo. Pellentesque non risus nec lectus auctor volutpat vel varius ex. Ut tempus maximus purus, id pretium diam blandit nec. Duis suscipit pretium risus, vel aliquam risus tristique vitae. Duis aliquet dapibus massa sit amet auctor. Aliquam fermentum tincidunt nulla, sed aliquam diam tincidunt vel.
Morbi eget turpis congue, mollis ipsum id, convallis elit. Sed et dapibus neque. Suspendisse ex massa, efficitur eu tincidunt at, egestas quis ipsum. In erat elit, pellentesque sit amet iaculis sed, ultricies ut augue. Curabitur tincidunt lectus id convallis posuere. Integer nec turpis nibh. Integer laoreet sem tellus, a viverra tellus blandit vitae. Proin consequat leo a lorem fermentum auctor.
Nunc posuere lorem est, id mattis arcu consequat ut. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; In vitae elit ut nibh faucibus dignissim eget tempus justo. Curabitur diam diam, suscipit non lacus nec, facilisis vulputate orci. Nullam sollicitudin ex dictum, ultricies libero et, viverra nunc. Curabitur ipsum ante, elementum sed felis et, euismod convallis risus. Phasellus facilisis nibh ut leo convallis egestas. Phasellus a justo ante. Vivamus mollis cursus dui dignissim scelerisque. In hac habitasse platea dictumst. Nullam non dolor metus.
Donec consequat commodo turpis, non elementum ligula sodales quis. Sed hendrerit tempor sapien, sit amet euismod arcu faucibus lobortis. Vivamus egestas quam porta turpis cursus, et fringilla quam tristique. Proin ac auctor ligula. Fusce euismod pharetra justo id convallis. Suspendisse in risus erat. Proin a enim placerat, congue orci in, finibus mauris. Curabitur tincidunt suscipit velit vitae dignissim. Donec non libero sed mauris ullamcorper ultrices ac vitae nisl. Quisque et ligula a ex elementum dictum. Nullam sed leo ultricies tellus ornare pretium a at libero. Vivamus gravida leo quis diam pulvinar scelerisque. Maecenas urna nibh, tincidunt et nulla eu, aliquet gravida ligula. Phasellus consequat pellentesque massa, vel scelerisque purus suscipit vel. Vivamus ac tincidunt urna.
Nulla dapibus, nunc in faucibus ullamcorper, magna erat ultricies magna, ut cursus odio nisl vel risus. Phasellus in justo at sapien sodales egestas. Suspendisse aliquam dolor et sem tempor, et iaculis eros euismod. Ut vel pretium dolor. Curabitur efficitur consequat neque faucibus egestas. Vestibulum feugiat nisl fermentum, bibendum neque et, eleifend magna. Ut sit amet lectus non urna placerat scelerisque. Curabitur euismod tortor tempor tempus feugiat. Suspendisse dictum nisi eros, eu elementum lectus maximus vel. Maecenas sapien purus, pharetra non imperdiet eget, mattis vitae magna. Etiam cursus tristique ante quis bibendum. Aliquam finibus dui at neque ullamcorper vulputate. Aliquam laoreet ultrices mollis. Sed at luctus urna, ut posuere sem. Nulla ultrices elit purus, vitae auctor eros interdum nec.
Pellentesque nec nisl justo. Praesent id eleifend magna, vel imperdiet sem. Mauris eu elit rutrum, sollicitudin lectus ac, posuere lectus. Vivamus consectetur condimentum dui sit amet consectetur. Donec non risus dignissim nulla venenatis auctor et et tortor. Duis bibendum semper justo, at molestie lorem congue vel. Duis ut tristique lectus. Nam et nisi imperdiet, faucibus neque ultrices, efficitur dui. In quis turpis mi. Aliquam ut nibh hendrerit, feugiat lorem et, pretium felis. Aenean hendrerit sed erat vel zembla."""
# mise en bas de casse pour le texte
ch = ch.lower()
# conversion de la chaine en liste
# methode split par defaut decoupe la chaine via les espaces
liste = ch.split()
# nombre d'element dans la liste donc de mots
result = len(ch.split())
# methode avec regex
result2 = len(re.findall(r'\w+', ch))
# supression des espaces dans la chaine
chaine = ch.replace(" ", "")
# longueur de la chaine (nombre caracteres)
motresult = len(chaine)
#print(f"Il ya {result } mots et {motresult} caractéres")
print(f"Il ya {result } mots et {motresult} caractéres sans espaces\n")
print(f"Il y a {len(ch)} caractéres avec espaces\n")
# recherche occurences sur un mot
print(f'avec la chaine sed apparait {ch.count("sed")} fois')
# ne donne pas le bon resultat quant count sur la liste
print(f'avec la liste sed apparait {liste.count("sed")} fois')
resCounter = Counter(liste)
total = resCounter['sed']
# ne donne pas le bon resultat
print(f'avec Counter sed apparait {total} fois') |
Partager