正则匹配是否是ip加端口的链接
时间: 2023-07-30 20:05:23 浏览: 124
可以使用正则表达式来判断一个字符串是否是 IP 地址加端口号的链接,以下是一个简单的正则表达式:
```
^((?:\d{1,3}\.){3}\d{1,3}|\[?(?:[a-fA-F0-9]{1,4}:){7}[a-fA-F0-9]{1,4}\]?)(?::(\d{1,5}))?$
```
这个正则表达式能够匹配以下格式的字符串:
- 192.168.1.1:8080
- [2001:0db8:85a3:0000:0000:8a2e:0370:7334]:80
如果一个字符串符合这个正则表达式,那么它很有可能是一个 IP 地址加端口号的链接。
相关问题
java正则表达式匹配ip加端口
可以使用以下正则表达式进行匹配:
^(?:[0-9]{1,3}\.){3}[0-9]{1,3}:[0-9]{1,5}$
其中 ^ 表示匹配字符串的开始,$ 表示匹配字符串的结束。(?:...) 表示非捕获组,[0-9]{1,3}\. 表示匹配 1 到 3 位数字和一个点号,{1,3} 表示重复 1 到 3 次,[0-9]{1,3} 表示匹配 1 到 3 位数字,: 表示匹配一个冒号,[0-9]{1,5} 表示匹配 1 到 5 位数字。
匹配ip之后的端口正则匹配示例 java
好的,以下是Java中使用正则表达式进行IP地址和端口匹配的示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class IPAndPortRegexDemo {
public static void main(String[] args) {
String input = "Server 1.2.3.4:8080 is running";
Pattern pattern = Pattern.compile("(\\d{1,3}\\.){3}\\d{1,3}:(\\d{1,5})"); // 匹配IP地址和端口号
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
String ip = matcher.group(0).split(":")[0]; // 获取IP地址部分
int port = Integer.parseInt(matcher.group(2)); // 获取端口号部分
if (isValidIP(ip) && port >= 1 && port <= 65535) { // 判断IP地址和端口号是否合法
System.out.println("IP: " + ip + ", Port: " + port);
}
}
}
private static boolean isValidIP(String ip) {
String[] parts = ip.split("\\.");
if (parts.length != 4) {
return false;
}
for (String part : parts) {
try {
int num = Integer.parseInt(part);
if (num < 0 || num > 255) {
return false;
}
} catch (NumberFormatException e) {
return false;
}
}
return true;
}
}
```
以上代码中,我们使用正则表达式 `(\\d{1,3}\\.){3}\\d{1,3}:(\\d{1,5})` 匹配输入字符串中的IP地址和端口号,并使用 `split()` 方法将匹配到的字符串分别提取出IP地址和端口号,最后判断IP地址和端口号是否合法(IP地址是否符合IPv4规范,端口号是否在合法范围内),符合条件则输出IP地址和端口号。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)