Я хотел бы запрограммировать запросы на вытягивание в GitHub, и если запрос на pull имеет комментарии в приведенном ниже коде, сделайте что-нибудь (на данный момент напечатайте номер запроса на вытягивание). У меня есть запрос на перенос, в котором есть комментарии, которые я ищу (разбросанные по нескольким комментариям в запросе на перенос), но он не печатает номер запроса на вытягивание. Я подозреваю, что это имеет какое-то отношение к регулярному выражению, которое я использую, потому что если я нарушаю оператор if, чтобы искать только регулярное выражение или строковые значения, он отлично работает, но когда я пытаюсь объединить их в одном выражении if, не работает.Если оператор с несколькими условиями с использованием regex
Я не думаю, что это дублированный вопрос, поскольку я рассмотрел все предложения по вопросам, которые могут уже иметь ваш ответ.
for pr in repo.pull_requests():
#check to ensure pull request meets criteria before processing
conflicts_base_branch = "This branch has no conflicts with the base branch"
checks = "All checks have passed"
sign_off_comment_present = re.compile(r"\B#sign-off\b", re.IGNORECASE)
for comment in list(repo.issue(pr.number).comments()):
if (conflicts_base_branch and checks in comment.body) and (sign_off_comment_present.search(comment.body)):
print(pr.number)
Все они присутствуют в _one_ комментарии или комментарии? Ваша версия требует, чтобы все они были в комментарии _same_. Также 'conflict_base_branch и проверки в comment.body' совпадает с' (conflict_base_branch) и (проверяет в comment.body) 'или' (True) и (проверяет в comment.body) ', поэтому он проверяет только наличие последний. – mata
Они представлены в нескольких комментариях в запросе на растяжение. Означает ли это, что это должно быть 'if conflict_base_branch в comment.body и проверяет в comment.body'? Если да, то как мне совместить это с выражением regex? – DBS
Вам нужно проверить их отдельно при повторении. Проверьте мой ответ – mata