元字符:
package com.model.regexp; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @Description:测试类 * @Author: 张紫韩 * @Crete 2021/8/19 15:05 * 演示正则表达式语法 */ public class RegExpDemo02 { public static void main(String[] args) { // \\ :转义号的使用 // .:匹配任意的一个字符 // \\.:表示匹配 . 字符 String context="abc$(abc(123("; String regExp="\\("; Pattern pattern = Pattern.compile(regExp); Matcher matcher = pattern.matcher(context); while (matcher.find()){ System.out.println(matcher.group(0)); } } }
选择匹配符:
定位符:
package com.model.regexp; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @Description:测试类 * @Author: 张紫韩 * @Crete 2021/8/19 15:42 * 演示字符匹配符的使用 */ public class RegExpDemo03 { public static void main(String[] args) { String context="abc12s3456@#$dea fa"; // 1.匹配字符 // String regExp="[a-z]{1,3}"; // String regExp="[^a-z]{1,3}"; // \\d: 1到3个 数字 // String regExp="\\d{1,3}"; // \\w: 1到3个 数字或字母,下划线 // String regExp="\\w{1,3}"; // \\W: 非数字字母,下划线 // String regExp="\\W{1,3}"; // \\D:非数字 // String regExp="\\D{1,3}"; // // String regExp="\\d?"; // String regExp="\\d+"; // String regExp="\\d*"; // 不区分大小写 : (?i) // String regExp="(?i)[a-z]"; // \\s:空白字符 // String regExp="\\s"; // . :任意一个字符,\n 除外 // String regExp="."; // 2。选择字符 // |:或,一次匹配多个 // String regExp="a|b|c"; // 3.定位字符: // ^ :以xx开头 ^[a-z] 以任意一个或多个字母开头 // $: 以xx位结尾 [a-z]+$:以任意一个或多个字母结尾 // String regExp="^[a-z]+.*[a-z]+$"; // a\\b : 匹配边界的a字符 {边界:被匹配的字符串的最后,也可以式空格的子字符串后面 } // String regExp="a\\b"; // a\\B:匹配非边界的a字符 String regExp="a\\B"; Pattern pattern = Pattern.compile(regExp); // 不区分大小写 // Pattern pattern = Pattern.compile(regExp,Pattern.CASE_INSENSITIVE); Matcher matcher = pattern.matcher(context); while (matcher.find()){ System.out.println(matcher.group(0)); } } }
分组: