первый раз постер здесь. Я не умею программировать, но я над этим работаю. Я получил назначение для моего класса Python, и я была поставлен задачей следующего:Regular Expressions
Вы должен думать о трех словах вы будете искать в линии чтения с клавиатуры. Три слова - ваше имя, ваш любимый цвет и ваш любимый сезон.
Ваша программа предложит пользователю строку, затем вы будете использовать регулярные выражения для поиска строки для каждого слова. Вы хотите найти слова, даже если случай смешан или отличается от того, что вы обычно используете.
Если вы нашли свое имя, вы должны распечатать вывод: «Привет, меня зовут NAME». С заменой NAME на то, что было напечатано (включая случай).
Если вы нашли свой любимый цвет, вы должны распечатать вывод: «О, мне нравится цвет COLOR». С заменой COLOR точно было набрано (включая корпус).
Если вы найдете свой любимый сезон, вы должны распечатать вывод: «Я думаю, что СЕЗОН - лучший сезон». С заменой SEASON точно было напечатано (включая случай).
Это то, что я пытался до сих пор:
import re
input = raw_input("Please input a sentence stating your name, your favorite color, and your favorite season: ")
x = "My name is DoTNeT."
name = input.split(",")[1]
z = re.search(name, x)
if z == None:
pass
else:
print x
Я считаю, что имею право идея здесь ... Я знаю, что это не так, я просто расстроен, потому что я до сих пор изучая Python, и с этим приходит изучение того, как говорить об этом. Я не знаю, как точно сказать, ПОЧЕМУ я ошибаюсь или как мне нужно это исправить. Я не ищу, чтобы кто-то просто отвечал за меня, я хочу это понять. Все это помогает. Благодарю.
Вы, кажется, пытаетесь найти «My name is DoTNeT» во втором «куске» ввода после запятой (вы разделяете запятой, а затем пытаетесь найти «My name is DoTNet» во втором из этих ломти). Разве вы не пытаетесь искать «DoTNet» (без учета регистра) на входе, предоставленном пользователем? Смысл, весь ваш ввод - это текст (скорее, 'str'), и вам нужно найти« DoTNet »в нем? – BorrajaX
независимо от того, что сказал BorrajaX. плюс, если у вас есть правильные ключевые слова, попробуйте с re.match с re.IGNORECAS и re.sub – rnbcoder