Не избыточно ли \ d в ?

Я читаю книгу и вижу множество примеров:

(?P<email> [\w\d.+-]+ # username @ ([\w\d.]+\.)+ # domain name prefix (com|org|edu) # limit the allowed top-level domains ) 

Так как \w означает [a-zA-Z0-9_] , \d означает [0-9] , \d является подмножеством \w .
Итак, разве эти «\ d» не являются избыточными? Пожалуйста, кто-то подтвердит, что мое понимание правильное, поскольку это заставляет меня гать.

One Solution collect form web for “Не избыточно ли \ d в ?”

Да, это избыточно, и простой \w будет работать так же хорошо. См. https://docs.python.org/2/library/re.html.

\d

Если флаг UNICODE не указан, он соответствует любой десятичной цифре; это эквивалентно множеству [0-9] . С UNICODE он будет соответствовать тому, что классифицируется как десятичная цифра в базе данных свойств символов Unicode.

\w

Если флаги LOCALE и UNICODE не указаны, они соответствуют любому буквенно-цифровому символу и подчеркиванию; это эквивалентно множеству [a-zA-Z0-9_] . С помощью LOCALE он будет соответствовать набору [0-9_] плюс любые символы, определенные как буквенно-цифровые для текущего языкового стандарта. Если UNICODE установлен, это будет соответствовать символам [0-9_] плюс все, что классифицируется как буквенно-цифровое в базе данных свойств символов Юникода.

  • Как удалить все после последнего числа в строке
  • Скорость многих регулярных выражений в python
  • help нужно написать регулярное выражение в необязательном состоянии
  • Python ищет конкретное слово и показывает их с границами в прерывистой последовательности слов
  • "^" В шаблоне регулярного выражения сделать ошибку
  • Regex Python добавляет символы после определенного слова
  • Получить текст внутри # {}
  • Python-Regex, что здесь происходит?
  • Python - лучший язык программирования в мире.