#python
#python
Вопрос:
Мне просто любопытно, почему в большинстве примеров, которые я видел, в которых используется re.verbose при использовании регулярных выражений, используется «‘?
Пример, который я нашел, показан ниже
address = re.compile(
''' #THIS
[wd. -] # username
@
([wd.] .) # domain name prefix
(com|org|edu) # we should support more top-level domains
''', #AND THIS
re.UNICODE | re.VERBOSE)
Комментарии:
1. Обратите внимание, что в общем случае вы хотите использовать «необработанные» строки, начиная их с, например,
r'''
. Это позволит вам использовать escape-последовательности регулярных выражений (например,w
) в регулярном выражении, не беспокоясь о том, что они будут интерпретированы как экранирующие строки типаn
. docs.python.org/tutorial/introduction.html#strings
Ответ №1:
Использование '''
позволяет строке занимать несколько строк, поэтому они могут разбивать каждую часть re вместо одной длинной строки.
Это сделано для удобства чтения кода, а не для функциональности.
Смотрите раздел «Строки» в руководстве по Python для получения дополнительной информации о строках, которые занимают несколько строк.
Комментарии:
1. Это определенно причина номер один. Тройные кавычки также позволяют использовать неэкранированные одинарные кавычки в регулярном выражении.