我想循環遍歷GitHub中的pull請求,並且如果pull請求在下面的代碼中有註釋,請執行一些操作(現在打印請求數)。我有一個包含我正在查找的評論(分散在拉請求中的多個註釋)的拉請求,但它不打印拉請求數。我懷疑它與我正在使用的正則表達式有關,因爲如果我打破if語句來查找正則表達式或字符串值,它可以正常工作,但是當我嘗試將它們合併到一個if語句中時,它不起作用。如果語句使用正則表達式有多個條件
我不認爲這是一個重複的問題,因爲我查看了可能已經有答案的問題下的所有建議。
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_評論或不同評論中嗎?你的版本要求他們都在同一評論中。同樣'conflict_base_branch和在comment.body'中的檢查與'(conflicts_base_branch)和(在in_comment.body中檢查)'或'(True)和(在checks.body中檢查)'相同,所以它只檢查是否存在後者。 – mata
這些出現在拉取請求中的多個註釋中。這是否意味着它應該是'如果comments_body中有衝突_base_branch並且在comment.body'中檢查?如果是這樣,我該如何將它與正則表達式結合起來? – DBS
您需要在迭代時分別檢查它們。檢查我的答案 – mata