Я пытаюсь разбить строку на конкретные ключевые слова. У меня есть список ключевых слов / символов.
, например: у меня есть список ключевых слов {'1', '2', '3', '4', '5', 'let', 'while'}
, и у меня есть строка let2while4
Я хочувывести список, содержащий {'let', '2', while', '4'}
Возможно ли это? В настоящее время у меня есть только его разделение с использованием разделителя с ''
Спасибо!
РЕДАКТИРОВАТЬ: Использование ответа Гилча ниже работает для примера ниже, но когда я добавляю свои полные ключевые слова, яполучить эти ошибки:
Traceback (most recent call last):
File "parser.py", line 14, in <module>
list = re.findall(f"({'|'.join(keywords)})", input)
File "/usr/lib/python3.7/re.py", line 223, in findall
File "/usr/lib/python3.7/sre_parse.py", line 816, in _parse
p = _parse_sub(source, state, sub_verbose, nested + 1)
File "/usr/lib/python3.7/sre_parse.py", line 426, in _parse_sub
not nested and not items))
File "/usr/lib/python3.7/sre_parse.py", line 651, in _parse
source.tell() - here + len(this))
re.error: nothing to repeat at position 17
Мои полные ключевые слова включают в себя:
words = {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0', 'х', 'у', 'Z', '+', '-', '*', '>', '(',»)», ';', '$', 'пусть', 'в то время как', 'еще', '='}