簡體   English   中英

用於匹配 IP 地址 class 的整個特定集合的正則表達式模式?

[英]The RegEx pattern for matching the entire specific sets of IP address class?

下面的 RegEx 僅突出顯示特定的 Private IP 尋址方案:

(?!^0\.)(?!^10\.)(?!^100\.6[4-9]\.)(?!^100\.[7-9]\d\.)(?!^100\.1[0-1]\d\.)(?!^100\.12[0-7]\.)(?!^127\.)(?!^169\.254\.)(?!^172\.1[6-9]\.)(?!^172\.2[0-9]\.)(?!^172\.3[0-1]\.)(?!^192\.0\.0\.)(?!^192\.0\.2\.)(?!^192\.88\.99\.)(?!^192\.168\.)(?!^198\.1[8-9]\.)(?!^198\.51\.100\.)(?!^203.0\.113\.)(?!^22[4-9]\.)(?!^23[0-9]\.)(?!^24[0-9]\.)(?!^25[0-5]\.)(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))

就像在這個例子中https://regex101.com/r/tKKYx0/3我需要更新代碼以僅匹配頂部的公共 IP 地址列表。

您可以嘗試的正則表達式是:

^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})(?=,)

在這里測試。

注意:我不太明白第一個 IP 與 IP 的 rest 有何不同。 我的正則表達式在行首查找 IP,后跟逗號。

注意 2:我的正則表達式並沒有真正驗證 IP。 例如 568.914.348.759 將成功返回。


對於新示例,請嘗試:

^(|(\S+.*?))(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})

在這里測試。

暫無
暫無

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

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