如何在正则表达式中区分数字和ip地址?

2024-05-13

例如,如果我们查看 5.56 和 183.55.0.144。基本上,当你做这样的事情时/\d+\.\d+/它匹配 5.56、189.55 和 0.144。有没有办法通过正则表达式仅匹配数字而不匹配 ip 地址的部分?我尝试使用前瞻,但我不知道它应该是什么样的......

这是我尝试使用的一组示例:

  1. 5.56
  2. 183.55.0.144
  3. 4544445555.6877878487874
  4. 1.75.

如何得到 1,3 和 4,而不需要 2 的部分?

我尝试过类似的东西:

  1. \d+\.\d+
  2. \d+\.\d(?!\.)
  3. (?<!\.)\d+\.\d+(很接近...)
  4. (?<!\.)\d+\.\d(?!\.)
  5. (?!(?:[0-9]{1,3}\.){3}[0-9]{1,3})\d+\.\d+(?!\.)\d+(很接近)
  6. \d+\.(?!(?:\.\d+){2})\d+
  7. (?<!(?:\.\d){2})\d+\.(?!(?:\.\d+){2})\d+还有许多类似的不同形式。

谷歌给出了类似这样的东西:[-+]?[0-9]*\.?[0-9]+ or [+-]?[0-9]+[.][0-9]*([e][+-]?[0-9]+)?还有许多其他变体。但它们都是ip的匹配部分。

附:对不起,我的英语不好。


示例数据的另一个选项可能是:

(?<!\S)\d+\.\d+\b(?!\.\d)

解释

  • (?<!\S)负向后看,断言左侧有一个空白边界
  • \d+\.\d+\b匹配 1+ 位数字.1+ 位数字
  • (?!\.\d)负向前瞻,断言不是.右边跟着一个数字

See a 正则表达式101演示 https://regex101.com/r/HExzXN/1.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在正则表达式中区分数字和ip地址? 的相关文章

随机推荐

  • Node.js 循环发送 http 请求

    我实际上遇到了使用 node js 执行的 javascript 代码的问题 我需要循环发送http请求到远程服务器 我在代码中设置了www google ca 这是我的代码 var http require http var option
  • php 删除特定文件夹及其所有内容

    我正在使用 php 删除包含已删除帖子图像的文件夹 我正在使用下面的代码 这是我在网上找到的并且做得很好 我想知道当一个文件夹中有其他文件夹时 如何只删除其中的特定文件夹 当我使用下面的代码时 如何才能做到这一点 使用 dev images
  • __doPostBack 方法如何被调用?调用方法在哪里?

    我用了一个
  • MediaStyle 通知未响应 RemoteControl 事件。

    我们正在将正在进行的播放通知迁移到 Lollipop 中引入的 MediaStyle 通知 RemoteControlClient 似乎已被弃用 并且 MediaStyle 通知不处理媒体按钮事件 例如通过耳机远程暂停 播放 有人得到这个工
  • 子查询与连接

    我重构了从另一家公司继承的应用程序的一个缓慢部分 以使用内部联接而不是子查询 例如 WHERE id IN SELECT id FROM 重构后的查询运行速度提高了约 100 倍 50 秒到 0 3 我预计会有改进 但谁能解释为什么它如此剧
  • 找到一系列间隔的最有效分组

    我有一个应用程序 其中有一系列不重叠的固定宽度间隔 每个间隔都有一个给定的键 每个间隔具有相同的宽度 并且可以存在连续的间隔 本质上 我想以最小化单独间隔的数量的方式对间隔和键进行分组 这可以通过合并具有相同键的连续间隔或查找匹配间隔并将它
  • IOS 8 CLLocationManager 问题(授权不起作用)

    import MyLocationViewController h define NSLog FORMAT printf s n NSString stringWithFormat FORMAT VA ARGS UTF8String int
  • Crystal Report 中多列的页面总计

    我有一个多列水晶报告 现在我想显示重量和金额列的运行总计 实际报告的图像是这样的 但是水晶报表设计器不显示其他列 所以我应该在哪一列上计算值 请遵循以下方法 使用以下文本创建名为 RunningTotal 的公式 RunningTotal
  • python 中的子进程调用以使用 JAVA_OPTS 调用 java jar 文件

    示例代码 import subprocess subprocess call java jar temp jar 如何在上面的命令中指定JAVA OPTS 当我使用上述命令时 我收到 java lang OutOfMemoryError 无
  • gcc 中 -g 选项的作用是什么

    我看到很多关于 gdb 的教程要求在编译 c 程序时使用 g 选项 我无法理解 g 选项的实际作用 它使编译器将调试信息添加到生成的二进制文件中 此信息允许调试器将代码中的指令与源代码文件和行号相关联 拥有调试符号可以使某些类型的调试 例如
  • 如何使用 Selenium webdriver 测试对 SVG 对象的点击?

    我正在尝试编写代码来检查单击 SVG 对象的功能 例如此 URL 上的美国州 http www amcharts com svg maps map usa 这可行 但是有更好的方法吗 不需要物理移动鼠标的东西 robert new Robo
  • React Router 总是将我重定向到不同的 url

    我是 React 和 React Router 的新手 我正在使用 React Router v4 并遵循基于以前版本的教程 但我让它工作了 使用在 SO 上找到的一些东西和 React Router v4 文档上的一些东西 但有一件事困扰
  • 无法提交到 svn - 访问被拒绝

    我正在使用 SVN 开发一个小项目 我查看了该项目 svn co http mylocalserver projectx 我进行了更改 更新并添加了文件 svn add file1 php file2 php 但是 每次我想使用此命令提交更
  • MySql JOINS 的优点/缺点

    当我从多个表中选择数据时 我经常使用 JOINS 最近我开始使用另一种方式 但我不确定从长远来看会产生什么影响 例子 SELECT FROM table 1 LEFT JOIN table 2 ON table 1 column table
  • PHP 版本如何匹配“API=yyyymmdd”签名/标签?

    是否有明确且可靠的来源来找出哪个 PHP 发行版本 x y z 携带 使用哪个 API yyyymmdd 签名 标签 PHP 的版本控制存储库是 PHP 版本与其 API 日期版本之间相关性的权威来源 请记住 仅主要版本PHP 的版本 例如
  • 通过 iBeacon 监控和测距与 CoreBluetooth scanForPeripheralsWithServices 检测信标

    对于 iOS 对想要扫描 BLE 信标 外设的应用程序施加的限制 存在很多困惑 在阅读了几个博客和 Stack Overflow 答案后 我想看看我是否正确理解了所有问题 如果有什么理解错误或者遗漏的地方请指正 我仅指 iOS 7 及更高版
  • 禁用 QML Slider 的鼠标滚轮

    我希望能够滚动Flickable使用鼠标滚轮 或触摸板上的两根手指 不改变Sliders它可能包含 示例代码及结果应用 import QtQuick 2 7 import QtQuick Window 2 2 import QtQuick
  • JasperReports 中的变量、参数和字段有什么区别?

    我是新手贾斯珀报告 一直在研究一些小样本 看来 字段 参数 和 变量 非常常用于演示动态数据 而且看起来很相似 那我能问一下他们具体有什么区别吗贾斯珀报告 我猜变量是 Jasper 报告中定义的东西 可以动态改变 参数是从外部源 Java
  • 如何禁用 Ionic2 / Angular2 上的“未使用的导入”警告

    我知道有一个选项可以禁用这些 未使用的导入 警告tslint跑步时ionic serve or ionic build 但我不知道该把它放在哪里 有人知道吗 谢谢 1 https palantir github io tslint rule
  • 如何在正则表达式中区分数字和ip地址?

    例如 如果我们查看 5 56 和 183 55 0 144 基本上 当你做这样的事情时 d d 它匹配 5 56 189 55 和 0 144 有没有办法通过正则表达式仅匹配数字而不匹配 ip 地址的部分 我尝试使用前瞻 但我不知道它应该是