-
Notifications
You must be signed in to change notification settings - Fork 0
/
hw04_normal.py
73 lines (58 loc) · 3.5 KB
/
hw04_normal.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# Эти задачи необходимо решить используя регулярные выражения!
# Задача - 1
# Запросите у пользователя имя, фамилию, email. Теперь необходимо совершить проверки, имя и фамилия должны иметь заглавные
# первые буквы. email - не должен иметь заглавных букв и должен быть в формате: текст в нижнем регистре, допускается нижнее
# подчеркивание и цифры, потом @, потом текст, допускаются цифры, точка, ru или org или com.
# Например:
# Пупкин василий - неверно указано имя, te$T@test.net - неверно указан email (спецсимвол, заглавная буква, .net),
# te_4_st@test.com - верно указан.
import re
def is_valid(pattern, object):
return True if re.search(pattern, object) else None
def validation_message(pattern, object):
return f'{object} is valid' if is_valid(pattern, object) else f'{object} is invalid'
user_name = input('Type your name: ')
user_surname = input('Type your surname: ')
user_email = input('Type your email: ')
name_and_surname_pattern = r'^[A-ZА-ЯЁ][a-zа-яё]*$'
email_pattern = r'^[a-z0-9_]+@[a-z0-9]+\.(ru|org|com)$'
print(validation_message(name_and_surname_pattern, user_name))
print(validation_message(name_and_surname_pattern, user_surname))
print(validation_message(email_pattern, user_email))
# Задача - 2:
# Вам дан текст:
some_str = '''
Мороз и солнце; день чудесный!
Еще ты дремлешь, друг прелестный —
Пора, красавица, проснись:
Открой сомкнуты негой взоры
Навстречу северной Авроры,
Звездою севера явись!
Вечор, ты помнишь, вьюга злилась,
На мутном небе мгла носилась;
Луна, как бледное пятно,
Сквозь тучи мрачные желтела,
И ты печальная сидела —
А нынче... погляди в окно:
Под голубыми небесами
Великолепными коврами,
Блестя на солнце, снег лежит;
Прозрачный лес один чернеет,
И ель сквозь иней зеленеет,
И речка подо льдом блестит.
Вся комната янтарным блеском
Озарена. Веселым треском
Трещит затопленная печь.
Приятно думать у лежанки.
Но знаешь: не велеть ли в санки
Кобылку бурую запречь?
Скользя по утреннему снегу,
Друг милый, предадимся бегу
Нетерпеливого коня
И навестим поля пустые,
Леса, недавно столь густые,
И берег, милый для меня.'''
# Необходимо с помощью регулярных выражений определить есть ли в тексте подряд
# более одной точки, при любом исходе сообщите результат пользователю!
dot_pattern = r'\.{2,}'
print('The text have 2 or more of dots') if is_valid(dot_pattern, some_str) else print('The text haven\'t 2 or more of dots')