Γεια σε όλους
Για να πάρουμε τις λέξεις σε μια πρόταση συνήθως χρησιμοποιούμε τη μέθοδο str.split()
γίνεται όμως εύκολα και με τη χρήση της re (regular expressions)
H re μας δίνει άπειρες δυνατότητες στην επεξεργασία κειμένου.
Αν θέλω λοιπόν να πω ότι λέξη είναι οποιαδήποτε ακολουθία χαρακτήρων που δεν έχει κενό μια ή περισσότερες φορές και ξέρω λίγο από regular expressions
αυτό μεταφράζεται πολύ εύκολα σε \S+
>>> import re
>>> a='καλημερα τι κανεις είσαι κλα2 53'
>>> word=re.compile('\S+')
>>> words=word.findall(a)
>>> words
['καλημερα', 'τι', 'κανεις', 'είσαι', 'κλα2', '53']
Στο ισόμνια κάποιος έθεσε το πρόβλημα να βρούμε τη μεγαλύτερη ακολουθία 0 η 1 σε έναν δυαδικό
σε re το 0... και το 1.. μεταφράζεται εύκολα σε 0+|1+
αντί λοιπόν να διαβάζουμε όλους τους χαρακτήρες και να υλοποιούμε αλγόριθμους κλπ
αρκεί
>>> sequence0_1='000001111111000011111111110000'
>>> winner=max((re.findall('1+|0+', sequence0_1)), key=len)
>>> winner
'1111111111'
καλή πηγή γενικά για re
www.regular-expressions.info/tutorial.html
για re σε python
docs.python.org/3/library/re.html
docs.python.org/3/howto/regex.html