diff --git a/regTest/src/main/java/com/hongyi/RegTheory.java b/regTest/src/main/java/com/hongyi/day1/RegTheory.java similarity index 98% rename from regTest/src/main/java/com/hongyi/RegTheory.java rename to regTest/src/main/java/com/hongyi/day1/RegTheory.java index 569941149289be200d2c9127fbf05aa9ad7d19a0..5036407fd866e74af8db8643a6815507e535eb17 100644 --- a/regTest/src/main/java/com/hongyi/RegTheory.java +++ b/regTest/src/main/java/com/hongyi/day1/RegTheory.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/Regex01.java b/regTest/src/main/java/com/hongyi/day1/Regex01.java similarity index 94% rename from regTest/src/main/java/com/hongyi/Regex01.java rename to regTest/src/main/java/com/hongyi/day1/Regex01.java index 43323993a4242e214aaeb7c2e1d2ea9189ba8958..12e5f4e916674255b1868d7738fa7708247c3d36 100644 --- a/regTest/src/main/java/com/hongyi/Regex01.java +++ b/regTest/src/main/java/com/hongyi/day1/Regex01.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/Regex02.java b/regTest/src/main/java/com/hongyi/day1/Regex02.java similarity index 96% rename from regTest/src/main/java/com/hongyi/Regex02.java rename to regTest/src/main/java/com/hongyi/day1/Regex02.java index c6e3475284d1884d510ea52fbf0a337cfe8c1f5c..e5ec16c4bdc780b3baeac0108baaa13db31347d1 100644 --- a/regTest/src/main/java/com/hongyi/Regex02.java +++ b/regTest/src/main/java/com/hongyi/day1/Regex02.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/Regex03.java b/regTest/src/main/java/com/hongyi/day1/Regex03.java similarity index 95% rename from regTest/src/main/java/com/hongyi/Regex03.java rename to regTest/src/main/java/com/hongyi/day1/Regex03.java index acee08437f88ae902d81d655ffa1e9f19a44e3c0..8de2d60a27804254b677fe876d9fb3081046ce44 100644 --- a/regTest/src/main/java/com/hongyi/Regex03.java +++ b/regTest/src/main/java/com/hongyi/day1/Regex03.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/Regex04.java b/regTest/src/main/java/com/hongyi/day1/Regex04.java similarity index 94% rename from regTest/src/main/java/com/hongyi/Regex04.java rename to regTest/src/main/java/com/hongyi/day1/Regex04.java index 7b3e71047c6bf65259b04c33261d38850f1fc347..83f7a342b078e21212e8fac1db27cda7ea5d5403 100644 --- a/regTest/src/main/java/com/hongyi/Regex04.java +++ b/regTest/src/main/java/com/hongyi/day1/Regex04.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/Regex05.java b/regTest/src/main/java/com/hongyi/day1/Regex05.java similarity index 78% rename from regTest/src/main/java/com/hongyi/Regex05.java rename to regTest/src/main/java/com/hongyi/day1/Regex05.java index 7f8ab598e2b60c857e244813b505492fba65fef7..1abd86508a17a0884f3342242311b20d95ef582d 100644 --- a/regTest/src/main/java/com/hongyi/Regex05.java +++ b/regTest/src/main/java/com/hongyi/day1/Regex05.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -6,9 +6,9 @@ import java.util.regex.Pattern; // 定位符使用 public class Regex05 { public static void main(String[] args) { - String content = "123abc"; + String content = "a123abc"; - String regStr = ""; + String regStr = "^[0-9]+[a-z]*"; Pattern pattern = Pattern.compile(regStr); Matcher matcher = pattern.matcher(content); @@ -16,6 +16,5 @@ public class Regex05 { while (matcher.find()) { System.out.println("find: " + matcher.group(0)); } - } } diff --git a/regTest/src/main/java/com/hongyi/day1/Regex06.java b/regTest/src/main/java/com/hongyi/day1/Regex06.java new file mode 100644 index 0000000000000000000000000000000000000000..49762db435951a860d8d993523be2dd00378cbe0 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day1/Regex06.java @@ -0,0 +1,28 @@ +package com.hongyi.day1; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/21 19:53 + * @Version 1.0 + */ + +// 分组 +public class Regex06 { + public static void main(String[] args) { + String content = "Hongyi s7788 nn1198han"; + + String regStr = "(?\\d\\d)(?\\d\\d)"; + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + + while (matcher.find()) { + System.out.println("find: " + matcher.group(0)); + System.out.println("第一个分组的内容: " + matcher.group("g1")); + System.out.println("第二个分组的内容: " + matcher.group("g2")); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/day1/Regex08.java b/regTest/src/main/java/com/hongyi/day1/Regex08.java new file mode 100644 index 0000000000000000000000000000000000000000..52fd51dc4d1c20edb2be569ed8df688f3866b513 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day1/Regex08.java @@ -0,0 +1,26 @@ +package com.hongyi.day1; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/21 20:10 + * @Version 1.0 + */ + +// 非捕获分组 +public class Regex08 { + public static void main(String[] args) { + String content = "hello韩顺平教育 jack韩顺平老师 韩顺平同学hello"; + + String regStr = "韩顺平(?!教育|老师)"; + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + + while (matcher.find()) { + System.out.println("find: " + matcher.group(0)); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/day1/Regex09.java b/regTest/src/main/java/com/hongyi/day1/Regex09.java new file mode 100644 index 0000000000000000000000000000000000000000..9af6f9f3c556a90eb45a4481062362a82e0af4e2 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day1/Regex09.java @@ -0,0 +1,25 @@ +package com.hongyi.day1; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/21 20:23 + * @Version 1.0 + */ +public class Regex09 { + public static void main(String[] args) { + String content = "hello 1111 ok"; + + String regStr = "\\d+"; // 1111 + String regStr1 = "\\d+?"; // 输出4个1 + + Pattern pattern = Pattern.compile(regStr1); + Matcher matcher = pattern.matcher(content); + + while (matcher.find()) { + System.out.println("find: " + matcher.group(0)); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/day1/Regex10.java b/regTest/src/main/java/com/hongyi/day1/Regex10.java new file mode 100644 index 0000000000000000000000000000000000000000..e882b857f9b4cc3957f3f36c47816771f4d49451 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day1/Regex10.java @@ -0,0 +1,27 @@ +package com.hongyi.day1; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/21 20:33 + * @Version 1.0 + */ +public class Regex10 { + public static void main(String[] args) { + String content = "11555555555"; + +// String regStr = "^[\u0391-\uffe5]+$"; + String regStr = "^[1](?:3|4|5|8)\\d{9}$"; + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + + if (matcher.find()) { + System.out.println("满足格式"); + } else { + System.out.println("不满足格式"); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/day1/Regex11.java b/regTest/src/main/java/com/hongyi/day1/Regex11.java new file mode 100644 index 0000000000000000000000000000000000000000..e02e342eff684b7a7b907a8cb47336b4dfd15aa6 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day1/Regex11.java @@ -0,0 +1,28 @@ +package com.hongyi.day1; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/21 20:49 + * @Version 1.0 + */ +public class Regex11 { + public static void main(String[] args) { + String content = "https://www.bilibili.com/video/BV1Eq4y1E79W?p=17&spm_id_from=pageDriver"; + + + + String regStr = "^((http|https)://)?([\\w-]+\\.)+[\\w-]+(\\/[\\w-?=&/%.#]*)?"; + + + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + + while (matcher.find()) { + System.out.println("find: " + matcher.group(0)); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/Regexp.java b/regTest/src/main/java/com/hongyi/day1/Regexp.java similarity index 99% rename from regTest/src/main/java/com/hongyi/Regexp.java rename to regTest/src/main/java/com/hongyi/day1/Regexp.java index bc616f208f2c9eb88f55b7ec0c1d6d80c7db458c..ef5c301ce85c89a4c6542421f656b0f2b96e3953 100644 --- a/regTest/src/main/java/com/hongyi/Regexp.java +++ b/regTest/src/main/java/com/hongyi/day1/Regexp.java @@ -1,4 +1,4 @@ -package com.hongyi; +package com.hongyi.day1; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/regTest/src/main/java/com/hongyi/day2/Regex01.java b/regTest/src/main/java/com/hongyi/day2/Regex01.java new file mode 100644 index 0000000000000000000000000000000000000000..2301aa3e30ffda6138178a5f85ad9d4bea6d7d02 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day2/Regex01.java @@ -0,0 +1,22 @@ +package com.hongyi.day2; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/22 14:04 + * @Version 1.0 + */ +// 演示matchers方法 +public class Regex01 { + public static void main(String[] args) { + String content = "hello abc hello, 韩顺平教育"; + + String regStr = "hello"; + String regStr1 = "hello.*"; + + boolean matches = Pattern.matches(regStr1, content); + System.out.println("整体匹配=" + matches); + } +} diff --git a/regTest/src/main/java/com/hongyi/day2/Regex02.java b/regTest/src/main/java/com/hongyi/day2/Regex02.java new file mode 100644 index 0000000000000000000000000000000000000000..8c20d11e9303bc26164df82639302b1d1964904f --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day2/Regex02.java @@ -0,0 +1,24 @@ +package com.hongyi.day2; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/22 14:14 + * @Version 1.0 + */ +public class Regex02 { + public static void main(String[] args) { + String content = "hello abc jack hello atm Hongyi"; + + String regStr = "hello"; + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + // 注意原来的字符串content并没有改变 + String newContent = matcher.replaceAll("world"); + System.out.println(content); + System.out.println(newContent); + } +} diff --git a/regTest/src/main/java/com/hongyi/day2/Regex03.java b/regTest/src/main/java/com/hongyi/day2/Regex03.java new file mode 100644 index 0000000000000000000000000000000000000000..d7d8395722a8285c92da52d1fb8655169febce81 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day2/Regex03.java @@ -0,0 +1,24 @@ +package com.hongyi.day2; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/22 14:34 + * @Version 1.0 + */ +public class Regex03 { + public static void main(String[] args) { + String content = "hello jack11 tom22 Hongyi"; + + String regStr = "(\\d)\\1"; + + Pattern pattern = Pattern.compile(regStr); + Matcher matcher = pattern.matcher(content); + + while (matcher.find()) { + System.out.println("find: " + matcher.group(0)); + } + } +} diff --git a/regTest/src/main/java/com/hongyi/day2/Regex04.java b/regTest/src/main/java/com/hongyi/day2/Regex04.java new file mode 100644 index 0000000000000000000000000000000000000000..5a1ab90e52bd0787bf2bd01ef44319a89e731954 --- /dev/null +++ b/regTest/src/main/java/com/hongyi/day2/Regex04.java @@ -0,0 +1,28 @@ +package com.hongyi.day2; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +/** + * @Author Kisugi Takumi + * @Date 2022/3/22 15:08 + * @Version 1.0 + */ +public class Regex04 { + public static void main(String[] args) { + String content = "我...我要...学学学学...编程java!"; + // 1.去掉所有的. + Pattern pattern = Pattern.compile("\\."); + Matcher matcher = pattern.matcher(content); + content = matcher.replaceAll(""); + + // 此时 content = "我我要学学学学编程java!" + // 2.去掉重复的字 + // 使用 (.)\\1+ 匹配 + pattern = Pattern.compile("(.)\\1+"); // 分组捕获的内容记录到$1 + matcher = pattern.matcher(content); + + content = matcher.replaceAll("$1"); + System.out.println(content); + } +}