In questo articolo vedremo come ottenere la lunghezza dell'ultima parola in una stringa con Python.
Possiamo utilizzare la seguente funzione.
import re
def length_of_last_word(s):
if not isinstance(s, str) or len(s) == 0:
return 0
limit = 10000
length = len(s)
if length > limit:
return 0
parts = s.strip().split(' ')
if len(parts) == 0:
return 0
if len(parts) == 1:
return len(parts[0].strip())
values = list(filter(lambda v: not re.search(r'^\s+$', v), parts))
if len(values) == 0:
return 0
if len(values) == 1:
return len(values[0])
last_word = values[-1:][0]
return len(last_word)
Esempio d'uso:
def main():
tests = ['Hello World', ' fly me to the moon ',
'luffy is still joyboy']
for test in tests:
print(test, length_of_last_word(test))
if __name__ == '__main__':
main()