爲了學習的目的,我從CodeFights做了一些正則表達式挑戰。現在他們在改變什麼以獲得正確結果方面有非常具體的規則。我用一種不同的方法解決了這個難題,我無法圍繞他們希望我做什麼。Python正則表達式找到第n個數字
問:返回給予串的第n個編號不被零的
例含鉛隨後在至少0其它字符
# I can only change ... to solve it
# def nthNumber_asked(s, n):
# pattern = ...
# return re.match(pattern, s).group(1)
# How I solved it
def nthNumber_mine(s, n):
return re.findall(r'(0*)([0-9]+)', s)[n-1][1]
s1 = "8one 003number 201numbers li-000233le number444"
s2 = "LaS003920tP3rEt4t04Yte0023s3t"
print(nthNumber_mine(s1, 4)) # Expected outcome = 233
print(nthNumber_mine(s2, 4)) # Expected outcome = 4
什麼是模式定義? – Rahul
這就是我想要弄清楚的。 – Ludisposed
你想要的最後一個號碼或最高號碼 –