их на пустую строку,если одна точка-не менять.мой код text='te.st..tex...t..'
text=re.sub('[.{1,}]','',text)
return re.sub(r'\s+',' ',text)
ошибка в том,что он удаляет точку и следующий символ после неё
>>> i = "te.st..tex...t.." >>> def deleteDots(i): i = list(i) n = len(i) for k in range(n-1): if (i[k] == '.' or i[k] == '') and i[k+1] == '.': i[k] = '' i[k+1] = '' return ''.join(i) >>> deleteDots(i) 'te.sttext'
re.sub(r'\.+', '.', text)
не получается
что именно?
ничего не меняется.все точки остаются
>>> text = "te.st..tex...t.." >>> re.sub(r'\.+', '.', text) 'te.st.tex.t.'
не много другая задача.мне нужно удалить если точек больше одной,а если одна,оставить
>>> text = "te.st..tex...t.." >>> re.sub(r'\.{2,}', '', text) 'te.sttext'
это работает,спасибо
Обсуждают сегодня