← Материалы RESOURCE
Даже одно и то же регулярное выражение немного отличается по синтаксису и поддержке в разных языках.

Ключевые понятия регулярных выражений общие, но детали синтаксиса (флейворы) различаются от языка к языку. Этот инструмент использует движок JavaScript (ECMAScript) в браузере, поэтому при переносе шаблона в другую среду стоит знать о различиях.

Именованные группы поддерживаются и в JavaScript, и в Python, и в PCRE, но синтаксис различается. JavaScript и PCRE используют (?<name>...), Python — (?P<name>...), и ссылки на них тоже разные. Просмотр назад поддерживается в современных JavaScript, Python и PCRE, но в некоторых старых средах его нет.

Запись флагов тоже отличается. В JavaScript они ставятся после слеша, как /pattern/gi, а в Python передаются как константа-аргумент вроде re.IGNORECASE. Флаги s(dotAll)·u(unicode) из JavaScript в других языках могут быть поведением по умолчанию или называться иначе.

Свойства Unicode \p{...} в JavaScript работают только при наличии флага u, а PCRE и Python (модуль regex) обрабатывают их немного иначе. При переносе шаблона на другой язык сначала сверьтесь с документацией по регулярным выражениям этого языка по этим пунктам.