Изучаю python, есть задачка - получить первое слово из строки.
Строка может начинаться с пробелов, точек и т.д (".... пример, строки "). Нужна функция, которая вернет слово "пример". Мой код в котором получилось получить слово, но избавиться от запятой не получается :
def splitText(string: str):
splitted = string.split()
for x in range(len(splitted)):
if splitted[x].isalpha():
print(splitted[x])
break
splitText("Hello world")
выведет "Hello", но если строка будет вида "Hello, world", то выведет "world"
Ответ
В таком подходе будут найдены все слова:
>>> import re
>>> word = '.... пример, строки'
>>> pattern = re.compile(r'\w+')
>>> pattern.findall(word)[0]
'пример'
В таком, только первое совпадение:
>>> pattern.search(word).group()
'пример'
Пример без регулярок:
>>> for i in word:
... if not i.isalpha() and i != ' ':
... word = word.replace(i, '')
...
>>> word
' пример строки'
>>> word.split()[0].strip()
'пример'
Комментариев нет:
Отправить комментарий