簡體   English   中英

重寫正則表達式數過濾Python

[英]Re-write regex expression number filtering Python

給定一個像 'hello 0796XXXXXX 這樣的字符串。 今天是你的幸運日£500 Cash',我使用以下正則表達式

re.findall(r"(\b07\d*|\b08\d*|\b09\d*)", t)接收以07開頭的數字| 08 | 09 后跟 0 個或多個數字。 ['0796']是結果。

我如何重新編寫代碼以使\b\d*不重復? 我試過re.findall(r"\b(07|08|09)\d*)", t)例如,但不幸的是它不起作用,只返回[07]

謝謝

regex = r"(07|08|09)\d*"
re.findall(regex, text)

避免使用括號,並將重復的 0 放在一邊:

re.findall(r"\b0[789]\d*", t)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM