我是正則運算式的新手,并陷入了這種情況,即我當前的正則運算式模式回傳兩個結果,其中一個以電話號碼開頭。(字串在電話號碼和電子郵件之間沒有空格)。我嘗試使用 ? 使表達不貪婪,但不回傳任何內容。
代碼
pattern = re.compile(r'\b[A-Za-z0-9._%.?-] @[A-Za-z0-9.-] \.[A-Z|a-z]{2,}\b')
matches = pattern.finditer(Clean)
for match in matches:
print(match.group(0))
輸出
[email protected]
[email protected]
預期產出
[email protected]
uj5u.com熱心網友回復:
我猜你要找的是:
pattern = re.compile(r"[a-zA-Z] [\w.-]*@[a-z] [.][a-z] ")
[a-zA-Z] -> 電子郵件以字母開頭
\w -> 任何字母、數字或下劃線
[\w.-]* -> 0 個或多個字母、數字、下劃線、. 或 -
[a-z] -> 1 個或多個字符長的小寫域
[.]-> 把 放在.方括號中,因為 。在正則運算式中具有特殊意義
pattern = re.compile(r"[a-zA-Z] [\w.-]*@[a-z] [.][a-z] ")
matches = pattern.findall("[email protected] ooo11..com [email protected] [email protected]")
print(matches)
結果:
['[email protected]', '[email protected]', '[email protected]']
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/396617.html
上一篇:范圍正則運算式中的數字
下一篇:我怎樣才能使這個正則運算式更短
