Найти - Пользователи
Полная версия: str.replace как правильно написать
Начало » Python для новичков » str.replace как правильно написать
1 2
Provi
В Excel можно заменить по маске “ (*)”, и будут заменены все значения которые начинаются с пробела имеют 2 кавычки и любой текст между ними.
Как сделать то же самое в Python, если не известна длина внутри кавычек, известно, что там есть буквы, цифры и могут быть символы.
AD0DE412

не правильная ссылка https://duckduckgo.com/l/?uddg=https%3A%2F%2Fdocs.python.org
 ( ")[a-zA-Z0-9]+(" )
Accordions For “Kivy” - “Python” “Kivy” GUI Tutorial #26.srt
Provi
так нет кода, если бы я знал какой код должен быть я бы не спрашивал.
AD0DE412
а ссылка на что ? )

упс не то

так правилтно
https://docs.python.org/3/howto/regex.html

upd а так у вас эксель то не мое хз че с ним делать
Provi
Y = X['number']
X['number'] = re.sub(r'Альфа', 'World', Y)
присваиваю переменной столбец в дата фрейме.
потом ищу и меняю одно слово на другое.
Выдает ошибку: TypeError: expected string or bytes-like object

что не так делаю?
AD0DE412
 import re
s = r'Accordions For "Kivy" - "Python" "Kivy" GUI Tutorial #26.srt'
print('"***"'.join(re.split('"[a-zA-Z0-9]+"', s)))
# Accordions For "***" - "***" "***" GUI Tutorial #26.srt

ps немного изменено ну эта regexp не моя сильная сторана
AD0DE412
Provi
TypeError: expected string or bytes-like object
у вас типы не подходят
doza_and
Provi
что не так делаю?
Скорее всего суете в Y датафрейм а надо строку.
Provi
и будут заменены все значения которые начинаются с пробела имеют 2 кавычки и любой текст между ними.
Provi
если не известна длина внутри кавычек, известно, что там есть буквы, цифры и могут быть символы.
Я тупой.
  • Заменены на что?
  • Кавычки одинарные или двойные?
  • Что такое в вашем понимании символы? Я знаю определение из С. isalpha isdigit isspace isalphanum. Ну или дайте определение задав входной файл flex https://en.wikipedia.org/wiki/Flex_(lexical_analyser_generator)
  • Как следует поступать с множественными кавычками. Например на что заменять 4 или 5 идущих подряд кавычек?
  • Как поступать с переводами строк которые легко могут оказаться в ячейках?
Без ответа на эти вопросы нельзя сделать никакой разумный код.
py.user.next
Provi
В Excel можно заменить по маске “ (*)”, и будут заменены все значения которые начинаются с пробела имеют 2 кавычки и любой текст между ними.
Как сделать то же самое в Python, если не известна длина внутри кавычек, известно, что там есть буквы, цифры и могут быть символы.
  
>>> import re
>>> 
>>> text = 'abc def "ghi" jkl"lmn" opq'
>>> pat = r' "[^"]+"'
>>> rep = 'X'
>>> 
>>> out = re.sub(pat, rep, text)
>>> 
>>> text
'abc def "ghi" jkl"lmn" opq'
>>> out
'abc defX jkl"lmn" opq'
>>>
Provi
Спасибо всем за комментарии. узнал много нового)
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