java - 解析数字地址

标签 java regex

我一直在尝试使用正则表达式从字符串中解析数字地址。

到目前为止,我已经能够从字符串 http://63.88.73.26:80/ 成功获取数字地址(部分)63.88.73.26:80 。然而,我一直试图跳过 :80/,但没有成功。

到目前为止我尝试过的是:

Pattern.compile("[0-999].*[0-999][\\p{Digit}]", Pattern.DOTALL);

但是仍然包括:80

我不知道我在这里错过了什么,我试图在最后检查\p{Digit} ,但这也没有多大作用

感谢您的宝贵时间!

最佳答案

您正在寻找积极的展望(?=...)。仅当其后跟有特定表达式(即正向前瞻括号中的表达式)时,该表达式才会匹配。以最简单的形式,您可以拥有

[0-9\.]+(?=:[0-9]{0,4})

尽管您可能需要将 [0-9\.]+ 部分(匹配 1 个或多个数字或句号)更改为更完整的内容,以检查您是否拥有格式正确的地址

访问 regexr.com,您可以随心所欲地调整自己的表达方式,直到成功为止...

关于java - 解析数字地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40893740/

相关文章:

java - LWJGL:使用 "partial"轴的奇怪矩阵旋转效果

java - 为什么我会得到这个异常(exception)?

java - 为什么我无法检查字符串中字符的成员资格?

javascript - 检查文件扩展名是否与文档类型文件相关,例如 ".txt, .doc, .pdf, .psd, etc."

ios - 如何从 NSString 中的句子中提取 URL?

java - java中replaceAll方法的特殊问题

java - 如何避免在java中使用泛型进行强制转换

javascript - 如何使用 jQuery 正则表达式拆分以管道符号分隔的字符串

regex - 为什么需要否定正则表达式?

java - 拆分字节数组