[英]Python - Regex Ip that doesnt starts or ends with a dot
我有一個找到IP的正則表達式:
'[0-9]+(?:\.[0-9]+){3}'
現在,如果Ip以點開頭或結尾,則需要使它失敗。 例如,這些將失敗:
- .1.1.1.1
- 1.1.1.1.
- 1.1.1.1.1
- 1.11.1.1.1
試試這個正則表達式:
(?<!\.)(?:[0-9]+(?:\.[0-9]+){3})(?!\.)
說明:
(?<!\\.)
-向后查找負號,以確保IP模式前面沒有.
(?:[0-9]+(?:\\.[0-9]+){3})
-與您的模式相同
(?!\\.)
-負向搜索,以確保IP模式后沒有.
另外,請注意,如果需要,還可以改善IP模式。
更新
根據您的評論,這是更新的正則表達式(我剛剛添加了單詞邊界,以便涵蓋您提供的情況):
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.