совпадение конечной косой черты с регулярным выражением Python

Я пытаюсь совместить трейлинг / вроде этого:

type(re.match('/$', u'https://xxx/')) <type 'NoneType'> 

Однако это соответствует:

 type(re.match('.*/$', u'https://xxx/')) <type '_sre.SRE_Match'> 

Используя Perl, первый шаблон соответствует:

 perl -e 'print "true" if "https://example.org/" =~ /\/$/' 

Как объяснить это поведение?

One Solution collect form web for “совпадение конечной косой черты с регулярным выражением Python”

re.match поиск вашего шаблона с начала строки. Поскольку ваша строка не начинается с '/', re.match('/$', u'https://xxx/') ничего не возвращает.

Для поиска последней косой черты вам нужно использовать re.search('/$', u'https://xxx/') .

  • почему \ b не работает в модуле python re?
  • Как сопоставить алфавитные символы без числовых символов с регулярным выражением Python?
  • Число фильтров Regex делится на 3
  • Проверка эквивалентности двух регулярных выражений Python
  • регулярное выражение python: получить конечные цифры из строки
  • Как сделать расщепление CamelCase в python
  • Python соответствует строке с регулярным выражением
  • Почему эти два выражения python дают разные результаты?
  • Расщепление строк в Python с использованием регулярного выражения
  • Что не так с моим шаблоном регулярного выражения, чтобы найти повторяющиеся циклы в Python?
  • Преобразование строк ввода пользователя в исходный строковый литерал для создания регулярного выражения
  • Python - лучший язык программирования в мире.