Вы можете сделать это с помощью re.split()
, разделив строку на один или несколько несловарных символов :
>>> import re
>>> re.split(r'\W+', 'H2 + O2 = 2H2O')
['H2', 'O2', '2H2O']
В качестве альтернативы, вы можете использоватьre.findall()
, чтобы найти все «слова»:
>>> re.findall(r'\w+', 'H2 + O2 = 2H2O')
['H2', 'O2', '2H2O']
И если вы хотите убрать начальные числа из слов, вы можете использовать такой шаблон:
>>> re.findall(r'\b\d*(\w+)', 'H2 + O2 = 2H2O')
['H2', 'O2', 'H2O']