Как удалить из строки все, кроме того, что я хочу?

#python #parsing #web-scraping

Вопрос:

Итак, в основном я хочу, чтобы пользователь мог ввести что-то, например "quote python syntax and semantics" , удалить слово 'quote' и что-нибудь еще (например, команда может быть 'could you quote for me Python syntax and semantics' ), затем отформатировать его таким образом, что я могу передать его в Википедии в статье URL-адреса (в данном случае ‘https://en.wikipedia.org/wiki/Python_syntax_and_semantics’), просить его и очистить элемент(ы), которые я хочу.

Любой ответ был бы очень признателен.

Ответ №1:

Вот простой пример этого:

 import re
msg = input() # Here give as input "quote python syntax and semantics"

repMsg = re.sub("quote", "", msg).strip() # Erase "quote" and space at the start
repMsg = re.sub(" ", "_", repMsg)         # Replace spaces with _
print(repMsg)                             # prints "python_syntax_and_semantics"
 

Модуль регулярных выражений python очень удобен для выполнения подобных задач. Обратите внимание, что вам, вероятно, потребуется точно настроить свой код, например, решить, когда заменить первое вхождение или заменить все, в какой момент удалить пробелы и т. Д.