5a162b213b8765c5db955583970d00df66982c9f
[msb/apigateway.git] / msb-core / apiroute / apiroute-service / src / main / java / org / openo / msb / wrapper / util / RegExpTestUtil.java
1 /**\r
2  * Copyright 2016 ZTE, Inc. and others.\r
3  *\r
4  * Licensed under the Apache License, Version 2.0 (the "License");\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  *     http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an "AS IS" BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License.\r
15  */\r
16 package org.openo.msb.wrapper.util;\r
17 \r
18 import java.util.regex.Pattern;\r
19 \r
20 public class RegExpTestUtil {\r
21   \r
22  \r
23     \r
24   public static boolean  hostRegExpTest(String host){\r
25       \r
26       String hostReg = "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."  \r
27               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."  \r
28               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."  \r
29               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)"\r
30               +":(\\d{1,5})$";   \r
31       return Pattern.matches(hostReg, host); \r
32       \r
33   }\r
34   \r
35   public static boolean  ipRegExpTest(String ip){\r
36       \r
37       String hostReg = "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\."  \r
38               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."  \r
39               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)\\."  \r
40               +"(00?\\d|1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|\\d)$";  \r
41       return Pattern.matches(hostReg, ip); \r
42       \r
43   }\r
44   \r
45  public static boolean  portRegExpTest(String port){\r
46       \r
47       String hostReg = "^\\d{1,5}$";  \r
48       return Pattern.matches(hostReg, port); \r
49       \r
50   }\r
51   \r
52 public static boolean versionRegExpTest(String version){\r
53       \r
54       String versionReg = "^v\\d+(\\.\\d+)?$";  \r
55       return Pattern.matches(versionReg, version); \r
56       \r
57   }\r
58 \r
59 public static boolean urlRegExpTest(String url){\r
60     if(url.equals("/")) return true;\r
61     \r
62     String urlReg = "^\\/.*((?!\\/).)$";  \r
63     return Pattern.matches(urlReg, url); \r
64     \r
65 }\r
66 \r
67 public static boolean apiRouteUrlRegExpTest(String url){\r
68     \r
69     String urlReg = "^\\/"+RouteUtil.API_ROOT_PATH+"\\/.*$";  \r
70     return Pattern.matches(urlReg, url); \r
71     \r
72 }\r
73 \r
74 public static boolean iuiRouteUrlRegExpTest(String url){\r
75     \r
76     String urlReg = "^\\/"+RouteUtil.IUI_ROOT_PATH+"\\/.*$";  \r
77     return Pattern.matches(urlReg, url); \r
78     \r
79 }\r
80 \r
81 \r
82   \r
83   \r
84   public static void main(String[] args) {\r
85       System.out.println(urlRegExpTest("/api "));\r
86 //      System.out.println("api".startsWith("/"));\r
87   }\r
88 }\r