- class Solution{
- <span style="white-space:pre;"> </span> privatestatic Pattern pattern;
- privatestatic Pattern ptipv4;
- static {
- // ipv6
- pattern = Pattern.compile("^ ((([0-9A-Fa-f] {1,4}:) {7} [0-9A-Fa-f] {1,4}) | (([0-9A-Fa-f ] {1,4}:) {1,7} :) | (([0-9A-Fa-f] {1,4}:) {6}: [0-9A-Fa-f] {1, 4}) | (([0-9A-Fa-f] {1,4}:) {5} (: [0-9A-Fa-f] {1,4}) {1,2}) | ( ([0-9A-Fa-f] {1,4}:) {4} (: [0-9A-Fa-f] {1,4}) {1,3}) | (([0-9A -Fa-f] {1,4}:) {3} (: [0-9A-Fa-f] {1,4}) {1,4}) | (([0-9A-Fa-f] {1,4}:) {2} (: [0-9A-Fa-f] {1,4}) {1,5}) | ([0-9A-Fa-f] {1,4}: (: [0-9A-Fa-f] {1,4}) {1,6}) | (: (: [0-9A-Fa-f] {1,4}) {1,7}) | (([0-9A-Fa-f] {1,4}:) {6} (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \ \ d | 25 [0-5]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0- 5])) {3}) | (([0-9A-Fa-f] {1,4}:) {5}: (\\ d | [1-9] \\ d | 1 \\ d { 2} | 2 [0-4] \\ d | 25 [0-5]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0- 4] \\ d | 25 [0-5])) {3}) | (([0-9A-Fa-f] {1,4}:) {4} (: [0-9A-Fa-f ] {1,4}) {0,1}: (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5 ]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5])) {3}) | (([0-9A-Fa-f] {1,4}:) {3} (: [0-9A-Fa-f] {1,4}) {0,2}: (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5]) (\\.(\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5])) {3}) | (([0- 9A-Fa-f] {1,4}:) {2} (: [0-9A-Fa-f] {1,4}) {0,3}: (\\ d | [1-9] \ \ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5])) {3}) | ([0-9A-Fa-f] {1,4}: (: [0-9A- Fa-f] {1,4}) {0,4}: (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [ 0-5]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5])) { 3}) | (: (: [0-9A-Fa-f] {1,4}) {0,5}: (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5]) (\\. (\\ d | [1-9] \\ d | 1 \\ d {2} | 2 [0-4] \\ d | 25 [0-5])) {3})) $ "(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}))$"(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}))$");
- // ipv4
- ptipv4 = Pattern.compile("^(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}$");
- }
- publicstatic String[] checkIPs(String[] ip_array) {
- String[] str=new String[ip_array.length];
- for(int i=0;i<ip_array.length;i++){
- if(pattern.matcher(ip_array[i]).matches()){
- str[i]= "IPv6";
- }elseif(ptipv4.matcher(ip_array[i]).matches() ){
- str[i]="IPv4";
- }else{
- str[i]="Neither";
- }
- }
- return str;
- }
- }
Enter an IP address to determine whether it is IP4 or IP6
Guess you like
Origin http://43.154.161.224:23101/article/api/json?id=324837000&siteId=291194637
Ranking