gpt4 book ai didi

javascript - 用于查找除 IP 地址以外的所有 IP 地址都以 172 开头的正则表达式

转载 作者:行者123 更新时间:2023-11-30 15:50:00 25 4
gpt4 key购买 nike

我希望正则表达式查找不是以 172.0.0.0 开头的 IP 地址。

我写了一些正则表达式 ^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$ 找到所有的 IP 地址。

最佳答案

.在正则表达式中是匹配所有内容的字符。要在此上下文中使用它,您必须对其进行转义。

还要将其限制为仅以 172 开头的 ip 地址,只需将其硬编码到您的正则表达式中,如下所示:

^172\.\d{1,3}\.\d{1,3}.\d{1,3}$

Regular expression visualization

Debuggex Demo

然后您可以使用它来过滤掉任何已经匹配的内容。


或者,如果您不是从 IP 地址列表开始,您可以使用否定的前瞻性直接获取所有地址。

^(?!172)\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}$

Regular expression visualization

Debuggex Demo


请注意,这可能会匹配多个 IP 地址 - 例如 400.660.226.602将被捕获​​ - 即使真实 IP4 地址不包含高于 255 的数字.也许这不会影响您的用例 - 但需要记住这一点。


根据下面的评论,如果您要在文档中的任何位置搜索 IP 地址,而不是单独一行,请使用 \b而不是 ^$

\b(?!172)\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}\b

Regular expression visualization

Debuggex Demo

例如,这将匹配日志格式,它在消息中包含一个 ip 地址,而不是在它自己的行中。

[10:01:22] Connection from 10.14.242.211 established.

关于javascript - 用于查找除 IP 地址以外的所有 IP 地址都以 172 开头的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39524637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com