Найти - Пользователи
Полная версия: Сравнение строк.
Начало » Python для новичков » Сравнение строк.
1
PyNovice
Пример. Есть строка
a = 'мама мыла раму'
и есть строка
b = 'Мама, мыла Раму™'
Как их можно привести к одному виду, выкинув все знаки и пр., как например ‘мамамылараму’ для корректного сравнения друг с другом. Может есть какой-то модуль или может как-то по-другому их можно сравнивать? Или все же придется свой огород городить?
terabayt
>>> import re
>>> s1 = "Hello world! :)"
>>> s2 = "helloworld"
>>> re.sub("[^\w]","",s1.lower()) == re.sub("[^\w]","",s2.lower())
True
но знак нижнего подчеркивания будет учитыватся, если нужно и без него, то так:
re.sub("[^a-z0-9]","",s1.lower()) == re.sub("[^a-z0-9]","",s2.lower())
PooH
Начните отсюда .

PS: Готовые модули есть
py.user.next
>>> def f(s):
...     return tuple(i.lower() for i in s if i.isalpha())
... 
>>> a = 'мама мыла раму'
>>> b = 'Мама, мыла Раму™'
>>> f(a) == f(b)
True
>>> f('мама') == f('мыла')
False
>>>
PyNovice
О сколько всего. Спасибо, буду изучать.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB