Код: Выделить всё
ef4d4037f8568e386629457d4d960915a85da2ae 61a4033ccf9159ae69f951f709d9c987d3c9f580 refs/heads/master
Я хочу разделить это на 3 переменные, одновременно проверяя ввод. Как проверить имя ветки?
В настоящее время я использую следующее регулярное выражение
Код: Выделить всё
^([0-9a-f]{40}) ([0-9a-f]{40}) refs/heads/([0-9a-zA-Z]+)$
Бонусные знаки
На самом деле я хочу исключить любую ветку, которая начинается с «build-». Можно ли это сделать в одном и том же регулярном выражении?
Тесты
Учитывая отличные ответы ниже, я написал несколько тестов, которые можно найти по адресу
https://github.com/alexchamberlain/gith ... re-test.py.
Состояние: все приведенные ниже регулярные выражения не компилируются. Это может указывать на проблему с моим скриптом или несовместимым синтаксисом.
Подробнее здесь: https://stackoverflow.com/questions/120 ... anch-names
Мобильная версия